На какие группы делятся типы данных в JavaScript?
Основы языка
Типы данных в JavaScript делятся на две группы: примитивы и объекты (ссылочные типы). Это фундаментальное деление определяет, как значения хранятся и передаются.
Примитивы (7 типов)
Хранятся и передаются по значению, иммутабельны:
- string — строки.
- number — числа.
- bigint — большие целые.
- boolean —
true/false. - undefined — нет значения.
- null — намеренное отсутствие.
- symbol — уникальный идентификатор.
Ссылочные типы (объекты)
Хранятся в куче, передаются по ссылке:
- object — объекты, массивы, функции,
Date,Map,Set,RegExp.
Практическое следствие
let a = 5;
let b = a; // копия значения
b++; // a не меняется
let o1 = { x: 1 };
let o2 = o1; // копия ссылки
o2.x = 9; // o1.x тоже 9Проверка группы
typeof— определяет примитивы (кромеnull).- Объекты дают
typeof === 'object'(функции —'function').
Коротко для собеседования
Две группы: примитивы (string, number, bigint, boolean, undefined, null, symbol) — по значению, иммутабельны; ссылочные (object, включая массивы и функции) — по ссылке. Это объясняет поведение при копировании и сравнении.