Как проверить одинаковый массив наиболее эффективным способом?
Я хочу проверить, идентичны ли эти два массива
(не содержательно, а в точном порядке).
Например:
array1 = [1,2,3,4,5]
array2 = [1,2,3,4,5]
array3 = [3,5,1,2,4]
Массивы 1 и 2 идентичны, но 3 не являются.
Есть ли хороший способ сделать это в JavaScript?
Ответы
Ответ 1
Итак, что неправильно с проверкой каждого элемента итеративно?
function arraysEqual(arr1, arr2) {
if(arr1.length !== arr2.length)
return false;
for(var i = arr1.length; i--;) {
if(arr1[i] !== arr2[i])
return false;
}
return true;
}
Ответ 2
Вы можете сравнить представления String так:
array1.toString() == array2.toString()
array1.toString() !== array3.toString()
но это также сделает
array4 = ['1',2,3,4,5]
равный array1, если это важно для вас