以下是“JavaScript中数组去除重复的三种方法”的完整攻略。
方法一:使用双重循环
算法思路
使用一个外层循环遍历数组元素,然后在外层循环内部再嵌套一个内层循环遍历前面的元素,依次与当前元素比较,如果有相同的就将其删除。
代码示例
function unique1(arr) {
for (var i = 0; i < arr.length; i++) {
for (var j = i + 1; j < arr.length; j++) {
if (arr[i] === arr[j]) {
arr.splice(j, 1)
j--
}
}
}
return arr
}
var arr = [1, 1, 2, 3, 3, 4, 5, 5]
console.log(unique1(arr)) // [1, 2, 3, 4, 5]
方法二:使用indexOf方法
算法思路
使用一个新的数组存放去重后的元素,遍历原有数组中的元素,如果该元素在新的数组中不存在,就添加到新的数组中。
代码示例
function unique2(arr) {
var result = []
for (var i = 0; i < arr.length; i++) {
if (result.indexOf(arr[i]) === -1) {
result.push(arr[i])
}
}
return result
}
var arr = [1, 1, 2, 3, 3, 4, 5, 5]
console.log(unique2(arr)) // [1, 2, 3, 4, 5]
方法三:使用ES6语法Set
算法思路
将数组转换成Set类型,再通过扩展运算符转换成数组类型。
代码示例
function unique3(arr) {
return [...new Set(arr)]
}
var arr = [1, 1, 2, 3, 3, 4, 5, 5]
console.log(unique3(arr)) // [1, 2, 3, 4, 5]
以上就是JavaScript中数组去除重复的三种方法的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript中数组去除重复的三种方法 - Python技术站