3.若结果数组中从不应当因素,则存到结果数组中

证实:至于怎么着对待,便是每便从原数组中收取一个因素,然后到指标中去做客那么些天性,如若能访谈到值,则证实重新。

您也许感兴趣的稿子:

  • JS完成数组去重方法总括(三种方式)
  • JavaScript数组去重的二种办法推荐
  • js完毕数组去重、判别数组以及对象中的内容是或不是同样
  • js算法中的排序、数组去重详细概述
  • javascript数组去重3种艺术的本性测量试验与比较
  • 金沙糖果派对网站app,javascript数字数组去重新项的兑当代码
  • JS数组去重与取重的演示代码
  • js indexOf()定义和用法
  • JavaScript
    Array对象扩充indexOf()方法
  • JavaScript从数组的indexOf()深刻之Object的Property机制
  • JavaScript使用indexOf()完毕数组去重的不二秘籍剖判

3.for循环时,每一遍抽出四个成分与对象进行比较,倘使这些成分不另行,则把它寄放到结果数组中,同一时候把这些因素的从头到尾的经过作为对象的一个个性,并赋值为1,存入到第2步创建的目的中。

其次种办法比地点的方法效能要高

首先种是相比较健康的办法

思路:

第三种方法也许有自然的局限性,因为在去重前举办了排序,所以最后回来的去重结果也是排序后的。要是供给不改换数组的逐个去重,那这种格局便不可取了。

2.创办三个空对象

思路:

2.反省原数组中的第i个元素 与
结果数组中的倒数因素是还是不是一律,因为早就排序,所以重复元素会在相邻地方

复制代码 代码如下:

1.创办一个新的数组贮存结果

其三种格局(推荐应用)

2.for循环中年花甲之年是从原数组中收取一个因素,用那么些因素循环与结果数组相比较

复制代码 代码如下:

3.只要不均等,则将该因素存入结果数组中

var arr = [112,112,34,’你好’,112,112,34,’你好’,’str’,’str1′];
alert(arr.unique3());

Array.prototype.unique1 = function(){
 var res = [this[0]];
 for(var i = 1; i < this.length; i++){
  var repeat = false;
  for(var j = 0; j < res.length; j++){
   if(this[i] == res[j]){
    repeat = true;
    break;
   }
  }
  if(!repeat){
   res.push(this[i]);
  }
 }
 return res;
}
var arr = [1, ‘a’, ‘a’, ‘b’, ‘d’, ‘e’, ‘e’, 1, 0]
alert(arr.unique1());

复制代码 代码如下:

思路:

Array.prototype.unique3 = function(){
 var res = [];
 var json = {};
 for(var i = 0; i < this.length; i++){
  if(!json[this[i]]){
   res.push(this[i]);
   json[this[i]] = 1;
  }
 }
 return res;
}

1.先将原数组实行排序

1.创设二个新的数组寄存结果

Array.prototype.unique2 = function(){
 this.sort(); //先排序
 var res = [this[0]];
 for(var i = 1; i < this.length; i++){
  if(this[i] !== res[res.length – 1]){
   res.push(this[i]);
  }
 }
 return res;
}
var arr = [1, ‘a’, ‘a’, ‘b’, ‘d’, ‘e’, ‘e’, 1, 0]
alert(arr.unique2());

admin

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注