初探 Array.toSpliced()
前言
Array 提供裁減內容的方法,而且不會改變原本 Array 的內容,也就是 Array.toSpliced() ,在此把學習的過程做個紀錄。
內容
範例如下
let ar = ["Jan", "Feb", "Mar", "Apr"]; // console.log( ar.toSpliced( 2 ) );//["Jan", "Feb"] // console.log( ar.toSpliced( 0 , 3 ) );//["Apr"] console.log( ar.toSpliced( 0 , 0 ) );//["Jan", "Feb", "Mar", "Apr"] console.log( ar.toSpliced( 1 , 2 ) );//["Jan", "Apr"] console.log( ar.toSpliced( 4 , 1 ) );//["Jan", "Feb", "Mar", "Apr"] // console.log( ar );//["Jan", "Feb", "Mar", "Apr"]
Array.toSpliced() 當輸入只有一個引數時,功能是從引數(索引值)以後全部裁掉,所以範例只剩頭兩個。如果輸入兩個引數,意思是從引數0(索引值)開始裁減引數1(數量),所以範例 toSpliced( 0 , 3 ) 只剩最後一個內容, toSpliced( 0 , 0 ) 要注意到引數1(數量)可以是 0 ,所以結果等於不裁減,接著, toSpliced( 1 , 2 ) 的結果是中間兩個內容被裁減,最後看到 toSpliced( 4 , 1 ) ,引數0(索引值)超出陣列的數量,這樣也等於沒裁減。要注意, Array.toSpliced() 是產生一個新的 Array ,所以 ar 的內容永遠不會改變。
參考資料
[ developer.mozilla.org ] Array.prototype.toSpliced()