如何删除数组

时间:2016-12-18 18:52:55

标签: javascript arrays

我想从数组javascript中删除所有相同的单词

var e = ["1A","2A","3A","4A"];

如何从变量e中删除所有A,以便我可以像

一样
["1","2","3","4"]

4 个答案:

答案 0 :(得分:0)

使用map(),您可以在数组的每个元素上调用replace()



var e = ["1A","2A","3A","4A"];
e = e.map(function(elt) {
  return elt.replace('A', "");
});
console.log(e);




答案 1 :(得分:0)

您可以在数组上map对其中的每个元素应用函数。

console.log(
    e.map( 
        function(element){
             return element.replace("A", "") //Remove "A"
        }
    )
)

您可以将功能更改为您喜欢的任何内容。

注意: map不会更改原始数组,只会返回一个新数组。这意味着如果您想要更改e,则必须将返回的值分配回e

较新的浏览器支持arrow functionssyntactic sugar可以写lambdas

以下是使用这些新箭头功能的代码

console.log(
    e.map( 
        element => element.replace("A", "") //Remove "A"
    )
)

或作为一行(参数为el而不是element来缩短它)

console.log(e.map(el => el.replace("A", "")))

或者,要将新值重新分配回e,您可以

e = e.map(el => el.replace("A", ""))

请记住: IE不支持箭头功能(但它正在被Microsoft Edge取代,因此不应该是一个问题)。如果您想确保每个浏览器都绝对兼容,请使用较长形式的function(arg){return ...;}而不是更具可读性的(arg) => ...。但是,箭头功能应该适用于现代浏览器。

答案 2 :(得分:0)

这种方式适用于所有浏览器

var word = 'killMe'; // word that you whant to remove 
var bad_array = ['1killMe','2 killMe','killMe 3']; // from where you whant to remove it

for (var i=0; i<bad_array.length; i++){
  bad_array[i] = bad_array[i].split(word).join('');
}

console.dir(bad_array);

答案 3 :(得分:0)

&#13;
&#13;
var f = e.join();

var g = f.replace(/A/g, '');

g.split(',');
&#13;
&#13;
&#13;