如何以最有效的方式检查相同的数组?
我想检查两个数组是否相同(不是内容明智,但按照确切的顺序)。
例如:
array1 = [1,2,3,4,5] array2 = [1,2,3,4,5] array3 = [3,5,1,2,4]
数组1和2是相同的,但3不是。
有没有一种好的方法来在JavaScript中做到这一点?
那么,迭代检查每个元素有什么问题呢?
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; }
你可以比较string表示,所以:
array1.toString() == array2.toString() array1.toString() !== array3.toString()
但那也会造成
array4 = ['1',2,3,4,5]
等于array1,如果这对你很重要