一、测试模版
<span style="color: #0000ff;">return index+<span style="color: #000000;">index
})
let start
= <span style="color: #0000ff;">new<span style="color: #000000;"> Date().getTime()console.log(<span style="color: #800000;">'<span style="color: #800000;">开始数组去重<span style="color: #800000;">'<span style="color: #000000;">)
function distinct(a,b) {
<span style="color: #008000;">//<span style="color: #008000;"> 数组去重
<span style="color: #000000;">}
console.log(<span style="color: #800000;">'<span style="color: #800000;">去重后的长度<span style="color: #800000;">'<span style="color: #000000;">,distinct(arr1,arr2).length)
let end = <span style="color: #0000ff;">new<span style="color: #000000;"> Date().getTime()
console.log(<span style="color: #800000;">'<span style="color: #800000;">耗时<span style="color: #800000;">',end - start)
二、Array.filter() + indexOf
遍历数组,并结合 indexOf 来排除重复项
五、Array.sort()
</span><span style="color: #0000ff;">for</span> (let i=1,len=arr.length; i<len; i++<span style="color: #000000;">) {
arr[i] </span>!== arr[i-1] &&<span style="color: #000000;"> result.push(arr[i])
}
</span><span style="color: #0000ff;">return</span><span style="color: #000000;"> result
}
这一数据结构,类似于数组,但 Set 的成员具有唯一性
的数据量之下...
七、for...of + Object
对象的属性不会重复这一特性,校验数组元素是否重复
</span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (let i of arr) {
</span><span style="color: #0000ff;">if</span> (!<span style="color: #000000;">obj[i]) {
result.push(i)
obj[i] </span>= 1<span style="color: #000000;">
}
}
</span><span style="color: #0000ff;">return</span><span style="color: #000000;"> result
}
15W 的数据居然只要 16ms ??? 比 Set() 还快???
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。