1、 将两个数组转成字符串比较,但是发现他们只是顺序不相等也被当做不相等
[1,2,3].toString()== [3,2,1].toString() ----false
2、我们可以先把数组排序按照从小到大的顺序sort()函数
[1,2,3].sort().toString()== [3,2,1].sort().toString() —true 这样的就是"1,2,3"=="1,2,3"结果是相等的
3、如果数组里的元素是标量,非object类型,可以使用==比较数组里的元素:
scalarArrayEquals(array1,array2) {
return array1.length==array2.length && array1.every(function(v,i) { return v === array2[i]});
}
/** * JS判断两个数组是否相等 * @param {Array} arr1 * @param {Array} arr2 * @returns {boolean} 返回true 或 false */ function arrayEqual(arr1, arr2) {if (arr1.length != arr2.length) return false; for (var i = 0; i < arr1.length; ++i) { if (arr1[i] !== arr2[i]) return false; } return true; }