以下是我的三个有效的在线测试方法和效率,如果您有更好的意见或建议可以作出,我们鼓励对方学习。

数组权重法1:


array.prototype.unique1 =函数(){
console.time(排列1); / /记录开始执行时间
var arr = {}; / /创建一个临时数组
var obj = {}; / /创建一个空的对象
对于(var i = 0;i < this.length;i++){ / /重量遍历数组
如果(obj { {我} }!)确定当前项目{ / / obj对象,没有执行力
Arr.push(本{我}); / /临时数组当前推
obj { {我} } = 1; / /当前项目存储在目标对象
}
}
Console.timeEnd(排列1); / /记录执行时间结束
报酬;
}


数组权重法2:


array.prototype.unique2 =函数(){
console.time(排列2); / /记录开始执行时间
var arr = {}; / /创建一个临时数组
对于(var i = 0;i < this.length;i++){ / /重量遍历数组
如果(arr.indexof(这{我})= = 1){ / /确定当前项目的临时数组,没有执行力
Arr.push(本{我}); / /临时数组当前推
}
}
Console.timeEnd(排列2); / /记录执行时间结束
报酬;
}


数组权重法3:


array.prototype.unique3 =函数(){
console.time(排列3); / /记录开始执行时间
var arr = { { 0 } }; / /创建一个临时数组,并将在沉重的临时数组,数组中的第一项
对于(var i = 1;i < this.length;i++){ / /二重新开始遍历数组
如果(this.indexof(这{我})= =我){ / /确定当前项目的临时数组,没有执行力
Arr.push(本{我}); / /临时数组当前推
}
}
Console.timeEnd(排列3); / /记录执行时间结束
报酬;
}


效率试验方法:


VaR arr1 = {}; / /创建一个数组去重
对于(var i = 0;i < 200000;i +);{ /遍历200000个数据
arr1.push(parseInt(数学。随机)(* 10)+ 1); / /所有数据将作为一个随机数返回(1-10)数,推到阵列中重
}

Console.log((前。unique1)); / /打印数组的执行时间1重量
Console.log((前。unique2)); / /打印数组的执行时间2重量
Console.log((前。unique3)); / /打印数组的执行时间3重量


效率试验结果:


总结

以上是关于Javascript中几种数组去复制方法的效率测试。我希望测试的结果将有助于您选择数组来复制该方法。如果有任何疑问,您可以留言,谢谢您的支持。