当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript学习:删除数组元素

Javascript
jQuery.fakeFile插件:网站上传控件
SWFObject:JS代码嵌入Flash媒体资源
30个绝对优秀的JavaScript Web创意应用
30个JavaScript滑动和滚动效果
jQuery教程:超酷的文字变色效果
不提示直接关闭网页窗口的JS代码
解读javascript的计时器(翻译教程)
JavaScript2.0提案
JS计数器函数执行过程解读
JS教程:学习Javascript数组
框架:document.compatMode
Javascript教程:判断函数类型
实现超酷的日期排列的2种方法
delegate软件实现本地调试客户端代码
有名函数表达式全面解析(翻译教程)
JS教程:lightbox源码解析
JavaScript工厂模式的memoizing技术
javascript编程:编程的陷阱(gotcha)
Javascript特效实例10个
Javascript教程:随机数

Javascript 中的 JavaScript学习:删除数组元素


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

JavaScript通过设置数组的length属性来截断数组是惟一一种缩短数组长度的方法.如果使用delete运算符来删除数组中元素,虽然那个元素变成未定义的,但是数组的length属性并不改变两种删除元素,数组长度也改变的方法.


<script>
/*
* 方法:Array.remove(dx)
* 功能:删除数组元素.
* 参数:dx删除元素的下标.
* 返回:在原数组上修改数组
*/


//经常用的是通过遍历,重构数组.
Array.prototype.remove=function(dx)
{
if(isNaN(dx)||dx>this.length){return false;}
for(var i=0,n=0;i<this.length;i++)
{
if(this[i]!=this[dx])
{
this[n++]=this[i]
}
}
this.length-=1
}
a = [''1'',''2'',''3'',''4'',''5''];
alert("elements: "+a+"\nLength: "+a.length);
a.remove(0); //删除下标为0的元素
alert("elements: "+a+"\nLength: "+a.length);


/*
* 方法:Array.baoremove(dx)
* 功能:删除数组元素.
* 参数:dx删除元素的下标.
* 返回:在原数组上修改数组.
*/


//我们也可以用splice来实现.


Array.prototype.baoremove = function(dx)
{
if(isNaN(dx)||dx>this.length){return false;}
this.splice(dx,1);
}
b = [''1'',''2'',''3'',''4'',''5''];
alert("elements: "+b+"\nLength: "+b.length);
b.baoremove(1); //删除下标为1的元素
alert("elements: "+b+"\nLength: "+b.length);
</script>