- 比较 2 个数组是否包含相同的元素
- @param a1 第一个数组
- @param a2 第二个数组
- @return boolean 两个数组中的元素都相等则返回 true,反之返回 false
function compareArray(a1, a2) {
if (a1 === a2) return true;
if ((!a1 && a2) || (a1 && ! a2)) return false;
if (a1.length !== a2.length) return false;
for (var i = 0, n = a1.length; i < n; i++) {
if (a1[i] !== a2[i]) return false;
}
return true;
}
- 通过排序比较 2 个数组是否包含相同的元素
- @param a1 第一个数组 ["a","b"]
- @param a2 第二个数组 ["b","a"]
- @return boolean 两个数组中的元素都相等则返回 true,反之返回 false
function compareArraySort(a1,a2){
if ((!a1 && a2) || (a1 && ! a2)) return false;
if (a1.length !== a2.length) return false;
a1 = [].concat(a1);
a2 = [].concat(a2);
a1 = a1.sort();
a2 = a2.sort();
for (var i = 0, n = a1.length; i < n; i++) {
if (a1[i] !== a2[i]) return false;
}
return true;
}