js 删除数组相同元素

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.111cn.net/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.111cn.net/ 1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<title>js 删除数组相同元素</title>
<script language="网页特效">
 var a = [1,2,3,1,1,3,5,3,6,2];
 var b=[];
 for(var i=0;i<a.length-1;i++){
  var bfound = false;
  for(var j=i-1;j>=0;j--){
   if(a[i]==a[j]) {bfound=true;break;}
  }
  if(!bfound) b[b.length]=a[i]
 }
 alert(b)

</script>
</head>

<body>

<script type="text/javascript">
<!--
    var arr = ['a','b','c','a','b','d','b'],hash = {};
    for(var i = 0; i < arr.length; i++)  hash[arr[i]] == undefined && (hash[arr[i]] = arr[i]);
    for(var o in hash) document.write(o)
//-->
</script>

<script>
var arr = [1,2,3,4,5,6,7,8,9,2,4,6,7,3,4];
var obj = new object();
for(var i=0;i<arr.length;i++){
if(!eval("obj.attr"+arr[i])){
eval("obj.attr"+arr[i]+"="+arr[i]);
}
}
var arr1 = [];
for(var attr in obj){
arr1[arr1.length] = obj[attr];
}
alert(arr1);
</script>

</body>
</html>

再提供一其它参数,删除数组元素函数

<script language="javascript" type="text/javascript">
array.prototype.del=function(n) {  //n表示第几项,从0开始算起。
//prototype为对象原型,注意这里为对象增加自定义方法的方法。
  if(n<0)  //如果n<0,则不进行任何操作。
    return this;
  else
    return this.slice(0,n).concat(this.slice(n+1,this.length));
    /**//*
       concat方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。
             这里就是返回this.slice(0,n)/this.slice(n+1,this.length)
            组成的新数组,这中间,刚好少了第n项。
       slice方法: 返回一个数组的一段,两个参数,分别指定开始和结束的位置。
    */
}
//我们来试一试这个自己增加的方法
var test=new array(0,1,2,3,4,5);
test=test.del(3);  //从0算起,这里也就是删除第4项。
alert(test);
</script>

 

时间: 2024-11-27 08:18:15

js 删除数组相同元素的相关文章

[Js]删除数组指定元素

写在前面 在最近的项目中,有用到js对数组的操作,之前自己几乎没有用到这种方法,这里就记录一下,算是对学到的东西的一种总结吧. 数组对象splice方法 splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目.该方法会改变原始数组. 基本语法 arrayObject.splice(index,howmany,item1,.....,itemX)  参数说明 index:必需.整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置. howmany:必需.要删除的项目数量.

js删除数组重复元素的方法

  <script language="网页特效"> <!-- function each(list, fun){ for (var i = 0, len = list.length; i < len; i++) { fun(list[i], i); } }; var arr = [1,2,3,4,1,3] var t each(arr.sort(), function(o,i){ if(i>0 && o == t){ alert(&quo

js删除数组元素、清空数组的简单方法(必看)_javascript技巧

一.清空数组 var ary = [1,2,3,4]; ary.splice(0,ary.length);//清空数组 console.log(ary); // 输出 [],空数组,即被清空了 二.删除数组元素 var ary = [1,2,3,4]; ary.splice(0,1); 或 ary.splice($.inArray(2, ary), 1); 其中$.inArray(2, ary)用来查找某元素在数组中的索引位置. 三,js 删除数组几种方法 var arr=['a','b','c

JS删除数组元素的函数介绍_javascript技巧

split将字符串转为数组并输出的代码: 复制代码 代码如下: <script language="javascript">    function spli(){             datastr="2,2,3,5,6,6";         var str= new Array();     str=datastr.split(",");           for (i=0;i<str.length ;i++ )  

js 删除数组的几种方法小结

 本篇文章主要是对js中删除数组的几种方法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助 var arr=['a','b','c']; 若要删除其中的'b',有两种方法:   1.delete方法:delete arr[1]   这种方式数组长度不变,此时arr[1]变为undefined了,但是也有好处原来数组的索引也保持不变,此时要遍历数组元素可以才用  代码如下: for(index in arr) {  document.write('arr['+index+']='+ar

c-循环遍历过程中,删除数组的元素?

问题描述 循环遍历过程中,删除数组的元素? for(var i=0,len=arr.length; i<len; i++){ if(符合条件){ arr.splice(i); } } 像上面这样,在遍历过程中,删除某个元素,会存在问题,可能导致某些元素没有机会被遍历. 这个算法应该如何改进? 解决方案 for(var i=0,len=arr.length; i<len; ){ if(符合条件){ arr.splice(i); } else i++;/////// } 或者从后面开始遍历,就不需

php递归调用删除数组空值元素的方法_php技巧

本文实例讲述了php递归调用删除数组空值元素的方法.分享给大家供大家参考.具体如下: 该函数可以删除数组里的所有空值元素,包含空字符串,空的数组等等. function array_remove_empty($arr){ $narr = array(); while(list($key, $val) = each($arr)){ if (is_array($val)){ $val = array_remove_empty($val); // does the result array conta

javascript删除数组重复元素的方法汇总

  本文实例讲述了javascript删除数组重复元素的方法.分享给大家供大家参考.具体分析如下: 这里分享一个前端面试高频题,主要实现javascript删除数组重复元素.希望对初学者有所帮助 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 //数组去重的方法 Array.prototype.unique=function(){ //集中声明变量 var oldArr=this, newArr=[oldArr[0]], len=oldA

php递归调用删除数组空值元素的方法

  本文实例讲述了php递归调用删除数组空值元素的方法.分享给大家供大家参考.具体如下: 该函数可以删除数组里的所有空值元素,包含空字符串,空的数组等等. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 function array_remove_empty($arr){ $narr = array(); while(list($key, $val) = each($arr)){ if (is_array($val)){ $val = a