当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 关于javascript中数组元素删除问题的讨论

Javascript
JavaScript 图片放大镜(可拖放、缩放效果)
javascript textarea支持图形编辑
各种效果的jquery ui(接口)介绍
js点小图显示大图的切换功能代码
js怎样实现下拉框改变,它旁边的图像也改变
js模拟电脑选择多文件夹效果_选区代码
js实现小鱼吐泡泡在页面游动特效
Javascript拖拽系列文章2之offsetLeft、offsetTop、offsetWidth、offsetHeight属性
js抓人游戏
JavaScript的学习入门整理篇
Js动态创建div
Javascript拖拽&拖放系列文章3之细说事件对象
javascript不同页面传值的改进版
select组合框option的捕捉实例代码
初学JavaScript第一章
初学JavaScript_03(ExtJs Grid的简单使用)
jquery的颜色选择插件实例代码
鼠标跟随效果代码
JS版网站风格切换实例代码
javascript支持IE和firefox(FF)的渐变透明效果

Javascript 中的 关于javascript中数组元素删除问题的讨论


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 207 ::
收藏到网摘: n/a

var arr=['a','b','c'];
若要删除其中的'b',有两种方法:
 
1.delete方法:delete arr[1]
这种方式数组长度不变,此时arr[1]变为undefined了,但是也有好处原来数组的索引也保持不变,此时要遍历数组元素可以才用
for(index in arr)
   document.write('arr['+index+']='+arr[index]);
这种遍历方式跳过其中undefined的元素

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

2.数组对象splice方法:arr.splice(1,1);
这种方式数组长度相应改变,但是原来的数组索引也相应改变
splice参数中第一个1,是删除的起始索引(从0算起),在此是数组第二个元素
第二个1,是删除元素的个数,在此只删除一个元素,即'b';
此时遍历数组元素可以用普通遍历数组的方式,比如for,因为删除的元素在
数组中并不保留

* 该方法IE5.5以后才支持

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