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

Как сравниваются массивы в JavaScript

В JavaScript массивы сравниваются по ссылке, а не по содержимому. Даже если два массива содержат одинаковые элементы, они не будут равны, если это разные экземпляры.

javascript
const a = [1, 2, 3];
const b = [1, 2, 3];
console.log(a === b); // false

Для сравнения содержимого массивов можно:

  1. Преобразовать в строку (но ненадежно для сложных объектов)
javascript
console.log(JSON.stringify(a) === JSON.stringify(b)); // true
  1. Использовать методы every() или библиотеки типа Lodash
javascript
const areEqual = a.length === b.length && a.every((val, i) => val === b[i]);

Для глубокого сравнения сложных структур лучше использовать специальные утилиты (_.isEqual из Lodash).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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