js array 截取
在JavaScript中,数组截取是指从一个数组中截取出指定范围的元素,创建一个新的数组。数组截取函数主要有两个方法:slice()
和splice()
。这两个方法在实际开发中经常会用到,因此我们需要深入了解它们的用法和区别。
1. slice()方法
slice()
方法可以从已有数组中返回选定的元素。它接受两个参数,分别为起始位置和结束位置(不包括该位置的元素)。如果只传入起始位置参数,那么截取的范围就是从起始位置到数组末尾。如果传入的参数为负值,表示从数组尾部开始计算位置。
语法
array.slice(start, end)
示例
let fruits = ['apple', 'banana', 'cherry', 'orange'];
let citrus = fruits.slice(1, 3);
console.log(citrus); // ["banana", "cherry"]
运行结果
["banana", "cherry"]
2. splice()方法
splice()
方法可以向数组中添加或删除元素,并返回被删除的元素。它接受三个参数,分别为起始位置、删除个数(可以为0),以及要添加的元素(可选)。
语法
array.splice(index, howmany, item1, ....., itemX)
示例
let fruits = ['apple', 'banana', 'cherry', 'orange'];
fruits.splice(2, 1, 'lemon', 'kiwi');
console.log(fruits); // ["apple", "banana", "lemon", "kiwi", "orange"]
运行结果
["apple", "banana", "lemon", "kiwi", "orange"]
说明
在上面的示例中,我们从索引为2的位置开始删除1个元素(即”cherry”),然后在该位置添加了”lemon”和”kiwi”。
3. slice()与splice()的区别
slice()
方法不会修改原数组,而是返回一个新数组,原数组保持不变。splice()
方法会修改原数组,并返回被删除的元素。
因此,在实际开发中,根据需求选择合适的方法来对数组进行截取操作。