嗨,我需要从另一个数组中删除该数组。下面是我尝试过的代码
var dummyObj = ["item1"];
var dummyArray = [ "item1", "item3", "item2"];
var data1=removeFromArray(dummyArray, dummyObj);
console.log("data1"+data1)
function removeFromArray(array, item)
{
while((index = array.indexOf(item)) > -1)
array.splice(index,1);
return array
}
下面是我的输出
item1,item3,item2
但所需的输出是
item3,item2
不知道我哪里出了问题。任何有关此问题的帮助都会非常有帮助
最佳答案
你的参数 item 是一个数组对象,所以你必须像 item[0] 一样使用它
while((index = array.indexOf(item[0])) > -1)
如果 dummyObj 包含多个值,那么您必须添加一个额外的循环
function removeFromArray(array, item)
{
for(var j=0;j<item.length;j++){
while((index = array.indexOf(item[j])) > -1)
array.splice(index,1);
}
return array
}
关于javascript - 在javascript中从另一个数组中删除一个数组中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22037357/