1.slice(start,end):方法可從已有數組中返回選定的元素,返回一個新數組,包含從start到end(不包含該元素)的數組元素。
注意:該方法不會改變原數組,而是返回一個子數組,如果想刪除數組中的一段元素,應該使用Array.splice()方法。
start參數:必須,規定從何處開始選取,如果為負數,規定從數組尾部算起的位置,-1是指最后一個元素。
end參數:可選(如果該參數沒有指定,那么切分的數組包含從start倒數組結束的所有元素,如果這個參數為負數,那么規定是從數組尾部開始算起的元素)。
var arr = [1,2,3,4,5]; console.log(arr.slice(1));//[2,3,4,5] 選擇序列號從1到最后的所有元素組成的新數組。
console.log(arr.slice(1,3))//[2,3] 不包含end,序列號為3的元素
同時slice(start,end)可以作用於字符串的切割
/*字符串切割和提取----slice(start,end),substring(),substr()*/
var str = "Hello,world!"; var sliceStr = str.slice(1,5);//ello (不包含end)
var subStr = str.substring(1,5);//ello
var subStr = str.substr(1,5);//ello,
var str = "1000000"; var sliceStr = str.slice(-3);//000 從序列號為-3的位置到最后
2.splice():該方法向或者從數組中添加或者刪除項目,返回被刪除的項目。(該方法會改變原數組)
splice(index,howmany,item1,...itemX)
index參數:必須,整數,規定添加或者刪除的位置,使用負數,從數組尾部規定位置。
howmany參數:必須,要刪除的數量,如果為0,則不刪除項目。
tem1,...itemX參數:可選,向數組添加的新項目。
var arr = [1,2,3,4,5]; console.log(arr.splice(2,1,"hello"));//[3] 返回的新數組
console.log(arr);//[1, 2, "hello", 4, 5] 改變了原數組