在 JavaScript 中,有兩種常用的方法可以截取數(shù)組的部分元素:`splice()` 和 `slice()`。
1. 使用 `splice()` 方法截取數(shù)組:
`splice()` 方法用于從數(shù)組中刪除、替換或插入元素,并返回被刪除的元素組成的數(shù)組。當只需要截取數(shù)組的一部分時,可以使用 `splice()` 方法來實現(xiàn)。`splice()` 方法接受兩個參數(shù):起始索引和截取長度。
- 如果只指定起始索引,則會從該索引開始截取到數(shù)組末尾。
- 如果同時指定起始索引和截取長度,則會從起始索引開始截取指定長度的元素。
- `splice()` 方法會修改原始數(shù)組。
示例:
let arr = [1, 2, 3, 4, 5];
// 從索引 2 開始截取到末尾
let result1 = arr.splice(2);
console.log(result1); // 輸出:[3, 4, 5]
console.log(arr); // 輸出:[1, 2]
// 從索引 1 開始截取 3 個元素
let result2 = arr.splice(1, 3);
console.log(result2); // 輸出:[2]
console.log(arr); // 輸出:[1]
2. 使用 `slice()` 方法截取數(shù)組:
`slice()` 方法返回一個新數(shù)組,包含從原始數(shù)組中截取的指定部分元素,而不會修改原始數(shù)組。`slice()` 方法接受兩個參數(shù):起始索引和結(jié)束索引(不包含在截取結(jié)果中)。
- 如果只指定起始索引,則會從該索引開始截取到數(shù)組末尾。
- 如果同時指定起始索引和結(jié)束索引,則會截取從起始索引到結(jié)束索引之間的元素。
- `slice()` 方法不會修改原始數(shù)組。
示例:
let arr = [1, 2, 3, 4, 5];
// 從索引 2 開始截取到末尾
let result1 = arr.slice(2);
console.log(result1); // 輸出:[3, 4, 5]
console.log(arr); // 輸出:[1, 2, 3, 4, 5]
// 從索引 1 開始截取到索引 4(不包含索引 4)
let result2 = arr.slice(1, 4);
console.log(result2); // 輸出:[2, 3, 4]
console.log(arr); // 輸出:[1, 2, 3, 4, 5]
需要注意的是,`splice()` 方法會修改原始數(shù)組,而 `slice()` 方法則返回一個新的數(shù)組,不會修改原始數(shù)組。根據(jù)具體的需求和對原始數(shù)組的影響,選擇適合的方法來截取數(shù)組的部分元素。