js删除Array指定位置元素方法

1.delete方法
delete arr[x]

    这种方式数组长度不变,此时arr[1]变为undefined了,但是也有好处原来数组的索引也保持不变,此时要遍历数组元素可以才用。

    遍历方法如下,这种遍历方式跳过其中undefined的元素。

for(index in arr){
    document.write('arr[’+index+’]=’+arr[index]);
}

    * 该方式IE4.o以后都支持了

2.数组对象splice方法

arr.splice(index,1);

    这种方式数组长度相应改变,但是原来的数组索引也相应改变。splice中第一个参数是删除的起始索引(从0算起),在此是数组第二个参数是删除元素的个数。

    遍历数组元素可以用普通遍历数组的方式,比如for,因为删除的元素在数组中并不保留。
    * 该方法IE5.5以后才支持

    另外,值得一提的是splice方法在删除数组元素的同时,还可以新增入数组元素比如arr.splice(1,1,’d',’e'),d,e两个元素就被加入数组arr了。结果数组变成arr:’a',’d',’e',’c’。

转自:http://www.cnblogs.com/liuzhixian/archive/2009/05/09/1453116.html

原文地址:https://www.cnblogs.com/scottckt/p/2287155.html