有人可以告诉我如何从数组中删除字符串元素吗?
我有谷歌这,我所得到的是按索引号删除

我的例子:

 var myarray = ["xyz" , "abc" , "def"] ;
 var removeMe = "abc" ;

  myarray.remove(removeMe) ;
  consle.log(myarray) ;

这是我从控制台得到的:
Uncaught TypeError: Object xyz,abc,def has no method 'remove'

jsfiddle

最佳答案

https://stackoverflow.com/a/3955096/711129:

Array.prototype.remove= function(){
    var what, a= arguments, L= a.length, ax;
    while(L && this.length){
        what= a[--L];
        while((ax= this.indexOf(what))!= -1){
            this.splice(ax, 1);
        }
    }
    return this;
}
var ary = ['three', 'seven', 'eleven'];

ary.remove('seven')

或者,使其成为全局函数:
function removeA(arr){
var what, a= arguments, L= a.length, ax;
while(L> 1 && arr.length){
    what= a[--L];
    while((ax= arr.indexOf(what))!= -1){
        arr.splice(ax, 1);
    }
}
return arr;
}
var ary= ['three','seven','eleven'];
removeA(ary,'seven')

您必须自己创建一个函数。您可以在数组上循环并从那里删除元素,或者让此函数为您完成。无论哪种方式,它都不是标准的JS功能。

关于javascript - 从javascript数组中删除字符串元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10805874/

10-12 12:54
查看更多