как сравнить два массива в javascript
Ответы

Вячеслав Межуревский
26 сентября 2022
Для того чтобы сравнить два массива и получить результат - например список уникальных значений, можно воспользоваться вложенными циклами:
const arr1 = [1,2,3,6,5];
const arr2 = [1,6,7,8];
const result = [];
for (let i = 0; i < arr1.length; i++) {
for (let j = 0; j < arr2.length; j++) {
if (arr1[i] === arr2[j]) {
result.push(arr1[i])
}
}
}
0
0

Aleksey
15 марта 2023
Прямое сравнение массивов всегда будет давать результат false
. Поскольку массив, как объект, указывает на ссылку памяти, где хранится "значение". И эти ссылки всегда будут разными, за исключением случая когда мы сравниваем один и тот же объект (массив).
[1, 2, 3] === [1, 2, 3]; // false
[1, 2, 3] > [1, 2, 3]; // false
[1, 2, 3] < [1, 2, 3]; // false
const a = [10, 11];
const b = a;
console.log(a === b); // true
В последнем случае мы сравниваем один и тот же массив и получаем true
, т.к. в b
скопировалась ссылку на этот массив, а не значение.
0
0
Добавьте ваш ответ