代码描述:javascript删除数组重复项。javascript删除数组中重复的项效果下载
数组中出现重复项是不可避免的,但是往往现实需要的是没有重复项的数组,下面就介绍两种如何删除数组重复项的代码实例,希望能够给需要的朋友带来一定的帮助。 解决方案一:
<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>
请绑定手机号,在继续操作
注意:只有绑定手机以后,才可使用网站全部功能