时间:2021-07-01 10:21:17 帮助过:7人阅读
数组去重,一般需求是给你一个数组,调用去重方法,返回数值副本,副本中没有重复元素。一般来说,两个元素通过 === 比较返回 true 的视为相同元素,需要去重,所以,1 和 "1" 是不同的元素,1 和 new Number(1) 是不同的元素,{} 和 {} 是不同的元素(引用不同)。(当然如果需求认为 {} 和 {} 算作相同的元素,那么解法就不一样了)
method 1
使用两重循环
method 2
这里判断可以使用一个语法糖
但是在低版本浏览器并没有 indexOf
method3
使用两重循环的另外一种比较方式,前面是将原数组的元素和结果数组一一比较,下面我们可以将原数组的重复元素的最后一个元素放入数组中
这里还有一个优化的版本
method4
用 javascript 中的 object 对象来当作 哈希表
因为 Object 的 key 值都是 String 类型,所以对于 1 和 "1" 无法分别,我们可以稍微改进下,将类型也存入 key 中
总结
以上就是JavaScript数组中去重的四种方法详解的详细内容,更多请关注Gxl网其它相关文章!