我有一個包含一些單個項目和某些陣列的陣列:函數從陣列內除去單品或陣列 - 的JavaScript
var groceries = ["toothpaste", ["plums", "peaches", "pineapples"], ["carrots", "corn", "green beans"], "orange juice", ["chocolate", "ice cream"], "paper towels", "fish"];
我想要寫的函數,以除去一些這些項目或陣列的當被調用時。
對於單品,我寫了這個功能:
function removeItems(arr, item) {
for (var i = 0; i < item.length; i++) {
var index = arr.indexOf(item[i]);
if (index > -1) {
arr.splice(index, 1);
}
}
};
於是我可以打電話:
removeItems(groceries, ["fish", "orange juice"]);
而這個工程完全按照我想讓它。然而,我無法弄清楚如何讓這個函數能夠從更大的數組中移除數組(例如[「巧克力」,「冰淇淋」))。我會怎麼做呢?
如果我只是想刪除「巧克力」,我會只刪除巧克力或陣列[「巧克力」,「冰淇淋」] – marvel308
我永遠不想刪除陣列中的部分陣列。只能刪除單個項目或整個陣列。那有意義嗎?所以在你的例子中,[「巧克力」,「冰淇淋」]。 – sprucegoose