如何删除数组中匹配的元素

43

我在JavaScript中有一个数组:

['html', 'css', 'perl', 'c', 'java', 'javascript']

如何删除"perl"元素?

需要删除第三个元素。必须删除值为"perl"的元素。


变量数组 = ['html', 'css', 'perl', 'c', 'java', 'javascript'] 变量索引 = 数组.indexOf('perl');如果 (索引 > -1) { 数组.splice(索引, 1); } - Ali NajafZadeh
2个回答

20
找到该单词的索引,然后使用splice从数组中删除它。
var array = ['html', 'css', 'perl', 'c', 'java', 'javascript']  
var index = array.indexOf('perl');

if (index > -1) {
    array.splice(index, 1);
}

3
如果你只想从数组中删除值并将该位置留空而不是用字符串填充:
var arr =['html', 'css', 'perl', 'c', 'java', 'javascript'];
delete arr[arr.indexOf('perl')];

如果你只想过滤掉那个值:

var arr2 = arr.filter(function(current,index,array){ return current != "perl"; } );

这取决于你想用数组做什么以及在空间和需要遍历数组的次数方面如何解决问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接