关于javascript:如何删除数组的匹配元素

How to remove the matching element of the array

本问题已经有最佳答案,请猛点这里访问。

我有一个javascript数组:

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

如何删除"perl"元素?

必须移除第三个元件。必须删除值为"perl"的元素。


找到单词的索引,然后使用拼接将其从数组中移除。

1
2
3
4
5
6
var array = ['html', 'css', 'perl', 'c', 'java', 'javascript']  
var index = array.indexOf('perl');

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

如果您只想删除数组中的值并保留未定义的点,而不是保留该字符串:

1
2
var arr =['html', 'css', 'perl', 'c', 'java', 'javascript'];
delete arr[arr.indexOf('perl')];

如果只想筛选出该值:

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

这取决于你想对数组做什么,以及你想如何在空间上解决这个问题,以及你想遍历数组多少次。