在javascript中搜索和删除数组元素

时间:2016-05-22 06:37:46

标签: javascript arrays

我有一个像:

这样的数组
componentWillUnmount() {
    this.showLocateIconListener.remove();
    this.endTripListener.remove();
    this.endSubdivisionIcon.remove();
}

如何删除元素del以使结果为

A = ['a', 'del', 'b', 'del', 'c']

我尝试了pop和indexOf方法,但无法

1 个答案:

答案 0 :(得分:2)

使用 filter() 过滤数组中的元素

var A = ['a', 'del', 'b', 'del', 'c'];

var B = A.filter(function(v) {
  return v != 'del';
});
 
console.log(B);

对于较旧的浏览器,请检查polyfill option of filter method

如果您要从现有数组中删除元素,请使用带有for循环的 splice()

var A = ['a', 'del', 'b', 'del', 'c'];

for (var i = 0; i < A.length; i++) {
  if (A[i] == 'del') {
    A.splice(i, 1); // remove the eleemnt from array
    i--; //  decrement i since one one eleemnt removed from the array
  }
}

console.log(A);