首页 > 解决方案 > 删除从特定位置开始的未知数量的数组元素

问题描述

我知道pop()将删除 JS 数组中的最后一个元素,这shift()将删除第一个元素,这slice()使您可以从数组中删除元素-并且您可以指定从哪个位置开始,以及要删除多少,就像这样:

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

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

标签: javascriptarrays

解决方案


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

来自文档

deleteCount 可选

如果 deleteCount 被省略,或者它的值大于 array.length - start (即,如果它大于数组中剩余的元素数,从 start 开始),那么从 start 到 end 的所有元素的数组将被删除。

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

console.log(cities)


推荐阅读