删除从特定位置开始的未知数数组元素



我知道pop()将删除JS数组中的最后一个元素,并且shift()将删除第一个元素,并且slice()允许您从数组中删除元素 - 并且您可以指定该元素。从什么位置开始,以及要删除多少位置,例如:

let cities = ["New York", "Tokyo", "Perth", "Helsinki"];
cities.splice(2, 2);
console.log(cities);

我想知道的是,您是否可以使用一种方法来从某个数组位置开始,并删除该数字以外的任何其他元素?

是的, splice。只是不提供第二个参数

来自文档

deletecount 可选

如果省略DeleteCount,或者其值大于array.length - start(也就是说,如果它大于数组中留下的元素数量,则在开始时,则从开始 通过数组的末尾将被删除。

let cities = ["New York", "Tokyo", "Perth", "Helsinki"];
cities.splice(2)
console.log(cities)

只需使用剪接提供初始索引,它只会假设您需要其他每个值,直到数组

如果您不想更改原始数组,则通过将0作为第一个参数使用slice()

let cities = ["New York", "Tokyo", "Perth", "Helsinki","Landon"];
let number = 1
console.log(cities.slice(0,number));

如果要修改原始数组,则可以使用splice()进行操作。

let cities = ["New York", "Tokyo", "Perth", "Helsinki","Landon"];
let number = 1
cities.splice(number); 
console.log(cities);

最新更新