MDN 链接: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
W3C 链接: http://www.w3school.com.cn/jsref/jsref_slice_array.asp
定义和用法
slice() 方法可从已有的数组中返回选定的元素。
语法
arrayObject.slice(start,end)
参数
参数 | 描述 |
---|---|
start | 必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。 |
end | 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。 |
返回值
返回一个新的数组,不改变原来的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
说明
请注意,该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Array.prototype.slice()</title>
</head>
<body>
<script>
// slice:切片
var array = [0, 1, 2, 3, 4, 5, 6, 7, 8];
// 输出原始数组
console.log(array);
// 从下标1开始选取
console.log(array.slice(1));
// 从最后一个开始选取
console.log(array.slice(-1));
// 从下标2选取,下标3结束; 输出的数组不包含后一位
console.log(array.slice(2, 3));
// 从倒数第5位开始,在倒数第1位结束,不包括倒数第一位
console.log(array.slice(-5, -1));
// 再次输出原始数组
console.log(array);
</script>
</body>
</html>
运行结果: