【发布时间】:2021-01-20 04:18:56
【问题描述】:
我有一个数组:
let originalArr = ['apple', 'plum', 'berry'];
如何在不改变 originalArr 的情况下从此数组中删除“plum”?
我可以想到以下方法:
let copyArr = [...originalArr];
originalArr = copyArr.filter(item => {
return item !== 'plum';
});
【问题讨论】:
-
filter创建一个新数组,因此您的第二个 sn-p 中不需要 copyArr。 -
更好的方法是什么意思?
-
不确定我明白了。 我们有没有更好的方法来删除项目并更新 originalArr 变量。但我以为你问的是如何在不改变
originalArr的情况下删除它...我错过了什么? -
对不起,我不应该提到最后一行..现在删除它
-
“没有变异”是什么意思? originalArr 应该维护'plum'条目并在没有它的情况下创建另一个数组?或者您需要在不修改数组引用的情况下删除李子。对于后一种情况,使用
splice: originalArray.splice(originalArray.indexOf('plum'), 1)
标签: javascript typescript ecmascript-6