陣列例項的copywithin()方法,在當前陣列的內部,將指定位置的成員複製到其他位置(會覆蓋原有成員),然後返回當前陣列。也就是說,使用這個方法,會修改當前陣列。
語法:
array.prototype.copywithin(target,start=0,end=this.length)
它接受三個引數,target必需:從該位置開始替換資料。如果為負值,表示倒數。
start可選:從該位置開始讀取資料,預設為0。如果為負值,表示倒數。
end可選:從該位置前停止讀取資料,預設為陣列長度。如果為負值,表示倒數。
這三個引數都應該是數值,如果不是,會自動轉為數值。
[1, 2, 3, 4, 5].copywithin(0, 3)
// [4, 5, 3, 4, 5]
上面**表示將從 3 號位直到陣列結束的成員(4 和 5),複製到從 0 號位開始的位置,結果覆蓋了原來的 1 和 2。
// 將3號位複製到0號位
[1, 2, 3, 4, 5].copywithin(0, 3, 4)
// [4, 2, 3, 4, 5]
// -2相當於3號位,-1相當於4號位
[1, 2, 3, 4, 5].copywithin(0, -2, -1)
// [4, 2, 3, 4, 5]
// 將3號位複製到0號位
.copywithin.call(, 0, 3)
// // 將2號位到陣列結束,複製到0號位
let i32a = new int32array([1, 2, 3, 4, 5]);
i32a.copywithin(0, 2);
// int32array [3, 4, 5, 4, 5]
// 對於沒有部署 typedarray 的 copywithin 方法的平台
// 需要採用下面的寫法
.copywithin.call(new int32array([1, 2, 3, 4, 5]), 0, 3, 4);
// int32array [4, 2, 3, 4, 5]
陣列的擴充套件 陣列例項的fill
fill方法使用給定值填充乙個陣列 a b c fill 7 7,7,7 new array 3 fill 7 7,7,7 上面 表明,fill方法用於空陣列的初始化非常方便。陣列中已有的元素,會被全部抹去。fill方法還可以接受第二個和第三個引數,用於指定填充的起始位置和結束位置。a b c fi...
陣列的擴充套件
陣列的擴充套件 es5 的寫法 function f x,y,z var args 0 1,2 f.null args es6的寫法 function f x,y,z let args 0 1,2 f args array.from方法用於將兩類物件轉為真正的陣列 類似陣列的物件 array lik...
陣列的擴充套件
1.array.from 將類陣列物件轉換為陣列,將iterator介面的類陣列轉換為真正的陣列 它也可以接收乙個 函式,對陣列裡面的每乙個元素進行遍歷 可以用該方法輸出 獲取的dom集的每乙個dom元素的某個屬性或者文字內容 好方法!2.array.of 將一組值轉換為陣列 3.copywithi...