gpt4 book ai didi

javascript - 使用值而不是索引删除数组

转载 作者:行者123 更新时间:2023-12-03 04:26:06 26 4
gpt4 key购买 nike

我必须检查B在哪个索引中吗?怎样才能摆脱B呢?说我有一个函数接收可能是 A、B、C 的参数

let grade = ['A','B','C']
delete grade['B']; // this won't work?
console.log(grade)

最佳答案

如果您确实致力于使用 delete数组上的运算符,你可以这样:

let grade = ['A', 'B', 'C'];
delete grade[grade.indexOf('B')];

但是请注意,这并不能实现您可能想要做的事情。更清楚地说,我假设您希望上面的操作返回 ['A', 'C']。事实上并非如此。相反,您会在索引 1 处(值 B 之前所在的位置)得到一个 undefined

console.log(grade);
['A', undefined x 1, 'C']

从数组中正确替换 B 的最合适操作是使用 Array#splice 。例如:

let grade = ['A', 'B', 'C'];
grade.splice(grade.indexOf('B'), 1);

console.log(grade);
['A', 'C']

关于javascript - 使用值而不是索引删除数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43713157/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com