Answer
t.me/js_testОтвет:
function isArraysElementsEqual(a, b) {
if (a === b) return true;
if (a.length !== b.length) return false;
a.sort();
b.sort();
return String(a) == String(b);
}
Объяснение:
Проверяем на то что a и b это не одна ссылка, проверяем на совпадение длинны обоих массивов. Далее сортируем оба массива с помощью стандартного метода sort. В конце приводим оба массива к строке, то есть соединяем все элементы в строку, и сравниваем.
Код для проверки:
function isArraysElementsEqual(a, b) {
if (a === b) return true;
if (a.length !== b.length) return false;
a.sort();
b.sort();
return String(a) == String(b);
}
console.log(isArraysElementsEqual([1, 3, 2, 4], [1, 2, 3]));
console.log(isArraysElementsEqual([1, 2, 3], [3, 2, 1]));
console.log(isArraysElementsEqual([NaN, true, "22"], ["22", true, NaN]));
console.log(isArraysElementsEqual([false, NaN, "22"], ["22", true, NaN]));