我正在尝试使用splice()函数从JavaScript中的数组中删除特定元素,但无法删除目标元素。
var a = [];
a.push("cs");
a.push("ac");
var curr2 = a.indexOf("ac");
if(curr2 != -1){
a = a.splice(curr2,1);
}
console.log(a);
预期结果:[“ cs”]实际结果:[“ ac”]
有人可以解释这种行为。谢谢!
最佳答案
这是因为Splice返回您删除的元素。
请记住,Splice会修改原始数组,因此当您进行
a = a.splice(curr2,1);
您正在存储已删除的元素。
将该行替换为
a.splice(curr2,1);
那应该可以解决您的问题!
关于javascript - Splice()函数未按预期工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44937430/