有人可以告诉我如何从数组中删除字符串元素吗?
我有谷歌这,我所得到的是按索引号删除
我的例子:
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/