数组中出现重复项是不可避免的,但是往往现实需要的是没有重复项的数组,下面就介绍两种如何删除数组重复项的代码实例,希望能够给需要的朋友带来一定的帮助。

解决方案一:
   [ 其他 ] 运行代码    下载代码
<script>
function unique(arr){
  var obj = {},newArr = [];
  for(var i = 0;i < arr.length;i++){
    var value = arr[i];
    if(!obj[value]){
      obj[value] = 1;
      newArr.push(value);
    }
  }
  return newArr;
}
var theArray=[1,2,3,4,5,2,1];
console.log(unique(theArray));
</script>
以上代码实现了我们的要求,可以删除数组中的重复元素,简单简单介绍一下实现过程:

一.实现原理:

原理比较简单,就是让数组中的值作为对象的属性,通过遍历比对数组的值是否已经是对象的属性,如果还不是的话,就将此数组值添加到新的数组,通过for循环于是就是最终实现了此效果。

二.代码注释:

1.function unique(arr){},实现此功能的函数,参数是要删除重复元素的数组。

2.var obj = {},newArr = [],声明一个对象和数组。

3.for(var i = 0;i < arr.length;i++){},遍历数组中的每一个元素。

4. var value = arr,将数组指定索引的值存入变量value。

6.if(!obj[value]),判断对象obj中是否具有此属性。

7.obj[value] = 1,为对象添加属性,并设置属性值为1。

8.newArr.push(value),将数组值添加到新的数组。

9.return newArr,返回新数组。

解决方案二:
   [ 其他 ] 运行代码    下载代码
<script>
function unique (arr){
  for(var i = 0;i < arr.length;i++){
    for(var j = i+1;j < arr.length;j++){
       if(arr[i] === arr[j]){
          arr.splice(j,1);
          j--
        }
      }
   }
   return arr;
}
var theArray=[1,2,3,4,5,2,1];
console.log(unique(theArray));
</script>

代码描述:javascript删除数组重复项。javascript删除数组中重复的项效果下载



131 175



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到