当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > JavaScript学习:删除数组元素

HTML/XHTML教程
Web浏览器模式的选择机制
XHTML+CSS建站如何调用样式表
HTML5和CSS3新的WEB标准和浏览器支持
HTML代码:网页头部代码全清楚
网页制作:HTML代码编写的30条技巧
HTML教程:link标记的rel属性
网页设计参考:firefox的默认样式
网页设计初学者必看的30个网页制作秘笈
网页制作推荐使用的XHTML标记
网页HTML代码讲解:有序列表和无序列表
IE8开发人员工具的菜单讲解
提高用户体验与新窗口打开网页的关系
解决IE支持HTML5的问题
了解如何减少 reflow 次数
平面设计理论:创造视觉冲击力作品
网页HTML 有序列表ol 和无序列表 ul
HTML Frameset 例子代码
让输入框关闭自动完成(AutoComplete)功能
IE支持HTML5的解决方法
基础 HTML之目录问题(相对路径和绝对路径区别)

HTML/XHTML教程 中的 JavaScript学习:删除数组元素


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-04   浏览: 96 ::
收藏到网摘: 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>