拼接功能反向工作,无法正常工作

时间:2019-08-05 10:09:17

标签: javascript

我正在构建一个有角度的应用程序。 我需要一个数组来从特定索引中删除一个元素。 我只是使用拼接方法。但是它不会从索引中删除元素。它除去了我提供的索引之外的整个元素。您可以在Chrome控制台本身中进行检查。

我不知道确切的原因是什么,但是当我检查了jsfiddle和w3schools之后,它运行正常。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(3,1);
["Banana", "Orange", "Apple"]

它现在应该像上面的数组一样返回

但是它返回了这个

[mango]

这很奇怪,但是请从您的控制台进行检查并发表评论

1 个答案:

答案 0 :(得分:0)

我认为您误解了.splice()的工作原理,它不会返回更改后的数组,但是会添加/删除元素,但会修改原始数组!

var fruits = ["Banana", "Orange", "Apple", "Mango"];
// returns the REMOVED element, e.g. 'Mango'
console.log(fruits.splice(3,1));
// but the actual array $fruits, has changed to
// ["Banana", "Orange", "Apple"]
console.log(fruits)