javascript - 怎样去除数组里的几个值,只提供该数组的下标的话
巴扎黑
巴扎黑 2017-06-30 09:59:33
0
5
846

splice去除会一直更换数组,更换下标,所以我之前记住的下标没用。

巴扎黑
巴扎黑

全部回复(5)
阿神

先删除下标大的再删除下标小的

代言

把数组换成对象,使用delete方法删除,下标就不会变了

漂亮男人

数组的map方法 剔除指定的索引位置的元素 新生成一个数组

或者直接filter方法

曾经蜡笔没有小新

可以试一下,新建一个新的数组,然后循环你要做修改的那个数组,如果下标不是你要删的那个数,那就把这个位置上的元素push到你的新的数组里,如果下标是你要删的那个数,直接continue跳出循环
这样循环结束之后,新的数组就是你需要的数组,再把它赋值给旧数组就好了

学习ing

生成新数组的话:

arr = [1,2,3,4,5,6,7]
removes = [1,3,5]
arr = arr.filter(function(value, index) { 
    return removes.indexOf(index) < 0
});

不生成新数组:

arr = [1,2,3,4,5,6,7]
removes = [1,3,5]
Array.prototype.remove = function(removes){
    removes.sort(function(a, b) {
        return a - b;
    }).reverse().forEach(function(value){this.splice(value, 1)
   }.bind(this)
)};
arr.remove(removes)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!