第一种方法,利用异或,^
。
let arr = [1, 2, 3, 4, 2, 3],
x1 = 0
for (let i = 0; i < arr.length; i++) {
x1 = x1 ^ arr[i];
}
console.log(x1); //输出 5
只要结果大于0就说明数组中又重复数据。
第二种方法,利用ES6语法.
首先回顾一下,数组如何去重
Array.from(new Set(arr))
利用这种方法就可以将数组去重,然后
Array.from(new Set(arr)).length < arr.length
只要去重后的数组长度小于原数组长度,就说明数组中有重复的数据。