JavaScript中的数组slice()方法
slice() 方法可以从已有的数组中返回选定的元素。
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]; var citrus = fruits.slice(1, 3); // citrus contains ["Orange", "Lemon"]
slice() 方法可接受一个或两个参数:
- start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指一个元素,-2 指倒数第二个元素,以此类推。
- end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
slice() 方法并不会修改原始数组,而是返回一个子数组。
slice()方法的使用
slice()方法可以用来从一个给定的数组中返回选定的元素,它接受一个或两个参数,可以指定开始和结束的位置,返回的数组不会修改原始数组,而是返回一个子数组。
// 返回从索引2开始到索引4之前的元素 var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]; var citrus = fruits.slice(2, 4); // citrus contains ["Lemon", "Apple"]
slice()方法也可以只接受一个参数,这时它会从该参数指定的位置开始返回数组中的所有元素,直到数组的末尾。
// 返回从索引2开始到数组末尾的元素 var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]; var citrus = fruits.slice(2); // citrus contains ["Lemon", "Apple", "Mango"]
slice()方法也可以使用负数作为参数,这时它会从数组尾部开始计算位置,-1代表一个元素,-2代表倒数第二个元素,以此类推。
// 返回从倒数第二个元素开始到数组末尾的元素 var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]; var citrus = fruits.slice(-2); // citrus contains ["Apple", "Mango"]
slice()方法还可以用于复制数组,只需要将其中的参数都设置为0即可。
// 复制数组 var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]; var citrus = fruits.slice(0); // citrus contains ["Banana", "Orange", "Lemon", "Apple", "Mango"]
slice()方法是一个非常实用的方法,可以用于从数组中返回选定的元素,也可以用于复制数组。