在本教程中,我们将借助示例了解 JavaScript Array slice() 方法。
slice()
方法将数组的一部分的浅拷贝返回到新的数组对象中。
示例
let numbers = [2, 3, 5, 7, 11, 13, 17];
// create another array by slicing numbers from index 3 to 5
let newArray = numbers.slice(3, 6);
console.log(newArray);
// Output: [ 7, 11, 13 ]
slice() 语法
用法:
arr.slice(start, end)
这里,arr
是一个数组。
参数:
slice()
方法包含:
start
(可选)- 选择的起始索引。如果未提供,则选择从 start 开始0.end
(可选)- 选择的结束索引(不包括)。如果未提供,则选择在最后一个元素的索引处结束。
返回:
- 返回一个包含提取元素的新数组。
示例 1:JavaScript slice() 方法
let languages = ["JavaScript", "Python", "C", "C++", "Java"];
// slicing the array (from start to end)
let new_arr = languages.slice();
console.log(new_arr); // [ 'JavaScript', 'Python', 'C', 'C++', 'Java' ]
// slicing from the third element
let new_arr1 = languages.slice(2);
console.log(new_arr1); // [ 'C', 'C++', 'Java' ]
// slicing from the second element to fourth element
let new_arr2 = languages.slice(1, 4);
console.log(new_arr2); // [ 'Python', 'C', 'C++' ]
输出
[ 'JavaScript', 'Python', 'C', 'C++', 'Java' ] [ 'C', 'C++', 'Java' ] [ 'Python', 'C', 'C++' ]
示例 2:带有负索引的 JavaScript slice()
在 JavaScript 中,您还可以使用负开始和结束索引。最后一个元素的索引是-1,倒数第二个元素的索引是-2,以此类推。
const languages = ["JavaScript", "Python", "C", "C++", "Java"];
// slicing the array from start to second-to-last
let new_arr = languages.slice(0, -1);
console.log(new_arr); // [ 'JavaScript', 'Python', 'C', 'C++' ]
// slicing the array from third-to-last
let new_arr1 = languages.slice(-3);
console.log(new_arr1); // [ 'C', 'C++', 'Java' ]
输出
[ 'JavaScript', 'Python', 'C', 'C++' ] [ 'C', 'C++', 'Java' ]
示例 3:将对象作为数组元素的 JavaScript slice()
slice()
方法以以下方式浅拷贝数组的元素:
- 它将对象引用复制到新数组。 (例如,嵌套数组)因此,如果修改了引用的对象,则更改在返回的新数组中可见。
- 它将字符串和数字的值复制到新数组中。
let human = {
name: "David",
age: 23,
};
let arr = [human, "Nepal", "Manager"];
let new_arr = arr.slice();
// original object
console.log(arr[0]); // { name: 'David', age: 23 }
// making changes to the object in new array
new_arr[0].name = "Levy";
// changes are reflected
console.log(arr[0]); // { name: 'Levy', age: 23 }
输出
{ name: 'David', age: 23 } { name: 'Levy', age: 23 }
相关用法
- JavaScript Array slice()用法及代码示例
- JavaScript Array shift()用法及代码示例
- JavaScript Array some()用法及代码示例
- JavaScript Array sort()用法及代码示例
- JavaScript Array splice()用法及代码示例
- JavaScript Array fill()用法及代码示例
- JavaScript Array flatMap()用法及代码示例
- JavaScript Array length用法及代码示例
- JavaScript Array isArray()用法及代码示例
- JavaScript Array values()用法及代码示例
- JavaScript Array entries()用法及代码示例
- JavaScript Array includes()用法及代码示例
- JavaScript Array find()用法及代码示例
- JavaScript Array unshift()用法及代码示例
- JavaScript Array pop()用法及代码示例
- JavaScript Array indexOf()用法及代码示例
- JavaScript Array reverse()用法及代码示例
- JavaScript Array lastIndexOf()用法及代码示例
- JavaScript Array flat()用法及代码示例
- JavaScript Array forEach()用法及代码示例
注:本文由纯净天空筛选整理自 JavaScript Array slice()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。