Встречается на собеседованиях • сегодня

В чем разница между примитивными и сложными типами данных в JavaScript

Примитивные типы (number, string, boolean, null, undefined, symbol, bigint) хранятся в стеке и передаются по значению. При копировании создается независимая копия.

Сложные типы (object, array, function) хранятся в куче, а в стеке хранится ссылка на них. При копировании передается ссылка, поэтому изменения отражаются во всех копиях.

javascript
// Примитивы
let a = 5;
let b = a; // Копируется значение
b = 10;
console.log(a); // 5 (не изменилось)

// Сложные типы
let arr1 = [1, 2];
let arr2 = arr1; // Копируется ссылка
arr2.push(3);
console.log(arr1); // [1, 2, 3] (изменился исходный массив)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы