JavaScript从数组去掉第一个元素的4种方法

JavaScript 编程语言具有许多有助于加快开发过程的预构建方法。对于您可能想到的任何任务,JavaScript 中总是有一个预构建的方法可以用来执行该特定任务。例如您可以对字符串进行切割、从数组中插入和删除元素、从一种数据类型转换为另一种数据类型、生成随机数等等。

在处理数组时,JavaScript有很多方便的方法可以操作数组数据结构。本文将介绍4种从数组中删除第一个元素的方法。

在JavaScript中去掉数组第一个元素的方法可分为两种类型、每个类型包含两种方法。

第一种类型的方法更改原始数组第二种类型的方法保留原始数组而不更改。

如果原始数组更改后没有问题,那么可以使用splice()shift()方法。

但是如果不想更改原始数组,则使用filter()slice()方法。

在JavaScript中更改原始数组去掉数组的第一个元素

splice()方法:

splice()方法用于从数组中删除或替换现有元素。此方法修改原始数组。splice()该方法还返回从数组中删除的元素。如果要获取已删除的元素,可以将返回的元素保存在变量中以供进一步使用。

语法:

splice(start)
splice(start, deleteCount)
splice(start, deleteCount, item1)
splice(start, deleteCount, item1, item2, itemN)

start参数指要开始操作数组的元素。开始可以取正值或负值。对于正值(1, 2, 3...., n)数组从左到右变化。使用负值(-1, -2, -3, ..)将开始右到左更改数组。

deleteCount参数和item1, item2, ...参数。

两者都是可选的。如果要从数组中删除一些元素,deleteCount可以将要删除的元素总数作为值传递给参数。如果是0则不会从数组中删除元素。

item1, item2, ...允许您传递要添加到数组的元素。

接下来我们来看一组例子。在实例中我们需要删除数组的第一个元素。

在这里您需要指定起始索引和要删除的元素数量。我们要删除第一个元素,所以起始索引0是,我们需要删除的元素总数1是。所以将值(0, 1)作为参数传递给splice()方法。

let array = [1,2,3,4,5]
let firstElement = array.splice(0, 1);
console.log(array, firstElement);

此外,实例中还将从数组中删除的元素存储在firstElement变量中。从数组中删除第一个元素后,输出array和firstElement变量中存储的值。

输出结果:

Array(4) [ 2, 3, 4, 5 ]
Array [ 1 ]

JavaScript从数组去掉第一个元素的4种方法  第1张

从输出结果中可以看出,在这种情况下,第一个元素1已成功从原始数组中删除。

JavaScript从数组去掉第一个元素的4种方法  第2张

shift()方法:

从数组中删除第一个元素的另一种方式是使用shift()方法。

splice()方法可用于从数组中添加或删除任何索引处的元素,但shift()方法中的0仅用于删除索引处的元素并将数组的其余部分移到左侧。此方法可以返回从数组中删除的元素。

let array = [1,2,3,4,5];
let firstElement = array.shift();
console.log(array, firstElement);

打印array变量和firstElement变量。

输出:

Array(4) [ 2, 3, 4, 5 ]
1

JavaScript从数组去掉第一个元素的4种方法  第3张

去掉数组的第一个元素而不更改JavaScript中的原始数组

filter()方法:

现在让我们看一下如何使用filter()方法保持原始数组完整并将操作结果存储在新数组中。

filter()方法的使用是有前提条件的,它会通过检查将符合条件元素添加到新数组中。

let array_1 = [1,2,3,4,5];
let array_2 = array_1.filter((element, index) => index > 0);
console.log(array_1, array_2);

filter()方法将回调函数(箭头函数)作为参数。使数组的每个元素调用此回调函数。此函数提供数组的element及其索引。

要删除第一个元素,所以添加元素索引是否大于零(index>0)的条件。如果是这种情况,filter()函数只会将元素插入新数组,否则不插入。实例中除了索引0中的元素(即第一个元素)之外,所有其他元素都将插入到新数组中。

输出:

Array(5) [ 1, 2, 3, 4, 5 ]
Array(4) [ 2, 3, 4, 5 ]

JavaScript从数组去掉第一个元素的4种方法  第4张

slice()方法:

slice()方法在两个位置选取数组。为此需要指定开始索引和结束索引。start表示开始对数组进行选取的第一个索引,end表示从何处结束选取。

start和end中的所有元素(包括起始值和结束前的一个元素)都被插入到新数组中。这两个参数都是可选的。

let array_1 = [1,2,3,4,5];
let array_2 = array_1.slice(1);
console.log(array_1, array_2);

因为想从数组中删除第一个元素,所以只传递start参数。不指定end意味着包含从start值开始的数组的所有元素。

在这种情况下通过slice(1)复制[2,3,4,5]到原始数组中,即array_1复制到array_2,最后使用console.log()打印两个数组。

输出:

Array(5) [ 1, 2, 3, 4, 5 ]
Array(4) [ 2, 3, 4, 5 ]

JavaScript从数组去掉第一个元素的4种方法  第5张

以上就是JavaScript分别使用splice()、shift()、filter()、slice()从数组去掉第一个元素的4种方法的详细内容。

本文来源:词雅网

本文地址:https://www.ciyawang.com/js-93.html

本文使用「 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 」许可协议授权,转载或使用请署名并注明出处。

相关推荐