数组权重删除方法

数组权重删除方法
三方法

使用索引来判断一个新的数组

一个类似的指标实际上是用于Underscore.js

输入数组
功能unique1(ARR){
无功tmparr = { };
对于(var i = 0;i < arr.length;i++){
如果当前数组已保存到临时数组中,则跳过,
否则将推送到临时数组中。
如果(tmparr.indexof(ARR {我})= = 1){
TmpArr.push(ARR {我});
}
}
返回tmparr;
}
使用索引来判断旧数组
功能unique2(ARR){
Var tmpArr = {}; / / array results
对于(var i = 0;i < arr.length;i++){
如果我第一次出现在数组中当前位置的当前数组不是i,
因此,重复i,忽略,否则,保存结果数组。
如果(arr.indexof(ARR {我})= =我){
TmpArr.push(ARR {我});
}
}
返回tmparr;
}

使用哈希查找

js对象的实现是哈希表的特性。

功能unique3(ARR){
无功tmparr = { },hash = {}; / /哈希散列
对于(var i = 0;i < arr.length;i++){
If (hash{arr{i}}!) 如果该表没有当前项,则为
{我} } { ARR hash = true; / /哈希表中
TmpArr.push(ARR {我}); / /在临时数组
}
}
返回tmparr;
}
阵列扩展
array.prototype.unique1 =函数(){
无功tmparr = { };
对于(var i = 0;i < this.length;i++){
如果(tmparr.indexof(这{我})= = 1){
TmpArr.push(本{我});
}
}
返回tmparr;
}

array.prototype.unique2 =函数(){
无功tmparr = {}; / /阵列结果
对于(var i = 0;i < this.length;i++){
如果(this.indexof(这{我})= =我){
TmpArr.push(本{我});
}
}
返回tmparr;
}

array.prototype.unique3 =函数(){
无功tmparr = { },hash = { };
对于(var i = 0;i < this.length;i++){
如果(!散列{此{ } }){
哈希{此} =真的;
TmpArr.push(本{我});
}
}
返回tmparr;
}

利用集

集和地图在ES6新数据结构

集合可以直接存储一组不重复的密钥,这个密钥也可以是一个对象、一个字符串,等等。

创建组
var =新集({ 1, 2, 3,});
设置{ 1, 2, 3 }

新的元素
(4)s.add。
> >
{ 1, 2, 3,4 }
(4)s.add。
> >
{ 1, 2, 3和4 }不添加重复元素

删除元素
设置{ 1, 2, 3,4 }
S.delete(3);
设置{ 1, 2, 4 }

遍历元素

映射和集合无法使用下标。

6标准引入了新的迭代器类型,而数组,地图,和设置都属于迭代型

var =新({ A,B,C});

对于(var x)s遍历
警报(x);
}

或直接使用Iterable内置foreach方法

foreach方法由es5.1标准介绍
var =新({ A,B,C});
s.foreach(功能(元,集){
警报(元素);
});
以上是本文的全部内容,希望大家能喜欢。

tag:删除权重数组方法电脑软件

相关内容