我们可以使用_.difference
函数来查看是否存在任何差异。
function isSame(arrayOne, arrayTwo) {
var a = _.unique(arrayOne),
b = _.unique(arrayTwo);
if (a.length <= b.length) {
a = arrayTwo;
b = arrayOne;
return _.isEmpty(_.difference(a.sort(), b.sort()));
} else {
return false;
}
}
// examples
console.log(isSame([1, 2, 3], [1, 2, 3])); // true
console.log(isSame([1, 2, 4], [1, 2, 3])); // false
console.log(isSame([1, 2], [2, 3, 1])); // false
console.log(isSame([2, 3, 1], [1, 2])); // false
// Test cases pointed by Mariano Desanze, Thanks.
console.log(isSame([1, 2, 3], [1, 2, 2])); // false
console.log(isSame([1, 2, 2], [1, 2, 2])); // true
console.log(isSame([1, 2, 2], [1, 2, 3])); // false
我希望这能帮到您。