博主博客--兼乎
总结在前
对于性能:
速度最快的是:对象键值对法去重(空间换时间)
最常规的是:使用indexof去重,注意ie8以下的兼容写法
最土的是:使用双重循环逐个遍历
推荐的是:es6优化去重
至于其他优质算法去重这里不谈,我们可以相互讨论,你邮件我你的思路,谢谢。
在项目中进行array去重常用有一下几种方法。
1.使用for循环法
思路:
1.构建一个新的数组存放结果
2.for循环中每次从原数组中取出一个元素,用这个元素循环与结果数组对比
3.若结果数组中没有该元素,则存到结果数组中
/*
* An Array of relevant
* use for loop
* */
Array.prototype.arrUnique_for = function () {
let res = [this[0]];
let flag = false;
for (let i = 1; i < this.length; i++) {
for (let j = 0; j < res.length; j++) {
if (this[i] === res[j]) {
flag = true;
break;
}