Разница в логически одинаковом коде при сравнение двух массивов
Всем привет! Сможет ли кто-нибудь объяснить, почему приведённые коды имеют разницу в работе ? Первый работает, а второй нет. Были изменены лишь операторы сравнения и их return.
[// ПЕРВЫЙ КОД КОТОРЫЙ РАБОТАЕТ
function areArraySome(a, b) {
if (a.length !== b.length) {
return false;
}
for (i = 0; i < a.length; i++) {
if (a[i] !== b[i]) {
return false;
}
}
return true;
};
console.log(
areArraySome(["got", "cat", "lot"], ["got", "cat", "lot"])
);
// ВТОРОЙ КОД, КОТОРЫЙ НЕ РАБОТАЕТ, потому что были изменены операторы сравнения, и следовательно, их вывод.
function areArraySome(a, b) {
if (a.length === b.length) {
return true;
}
for (i = 0; i < a.length; i++) {
if (a[i] === b[i]) {
return true;
}
}
return false;
};
console.log(
areArraySome(["got", "cat", "lot"], ["got", "cat", "lot"])
);
]
|