javascript如何删除指定数组元素


当前第2页 返回上一页

第二种我们用循环中的filter方法。

1

2

3

4

5

var colors = ["red", "blue", "grey"];

 

colors = colors.filter(function(item) {    return item != "red"});

  

console.log(colors); // ["blue", "grey"]

代码很简单,找出元素不是red的项数返回给colors(其实是得到了一个新的数组,并不是在原数组上进行删除操作),一定程度上也算是达到了删除特定元素的目的。

prototype原型方法

可以通过在Array的原型上添加方法来达到删除的目的。

1

2

3

4

5

6

7

8

9

10

11

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;

};var colors = ["red", "blue", "grey"];

colors.remove(1);

console.log(colors); // ["red", "grey"]

这种方法其实就是自己实现一个删除的逻辑,然后把删除方法添加给了Array的原型对象,则在此环境中的所有Array对象都可以使用该方法。尽管可以这么做,但是不推荐在产品化的程序中修改原生对象的原型。道理很简单,如果只是某个实现中缺少某个方法,就在原生对象的原型中添加这个方法,那么当在另一个支持该方法的实现中运行代码时,就可能导致命名冲突。而且这样做可能会意外地导致原生方法被重写。

【推荐学习:javascript高级教程

以上就是javascript如何删除指定数组元素的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

css与javascript的区别是什么

小程序中canvas如何实现图案在线定制的功能

javascript有什么用?

javascript怎么去掉标签

两分钟了解jquery与javascript、js 三者间的区别

关于http前端存储的总结

javascript实现无限级递归树的代码示例

js中eval函数有什么用

javascript中怎么将xml转为json

如何处理javascript内存泄露

更多相关阅读请进入《javascript》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...