ES6的陣列擴充套件( fill()方法 )
阿新 • • 發佈:2018-11-08
fill()函式,使用指定的元素替換原陣列內容,會改變原來的陣列。
該函式有三個引數:
fill(value, start, end)
value
:替換值。
start
:替換起始位置(陣列的下標),可以省略。
end
:替換結束位置(陣列的下標),如果省略不寫就預設為陣列結束。有引數時為結束位置,但不替換該位置。如果結束位置大於陣列的長度,那麼預設也只替換到陣列的實際長度結束位置。
替換的區間為 [start,end)
。
let oldArr1 = [];
let oldArr2 = [1,2,3];
let newArr1 = oldArr1.fill(6); //當為空陣列時什麼都不替換
let newArr2 = oldArr2.fill(6);
console.log(newArr1); // []
console.log(newArr2); // [6, 6, 6]
let oldArr3 = [1,2,3,4,5];
let oldArr4 = [1,2,3,4,5];
let newArr3 = oldArr3.fill(6,1);
let newArr4 = oldArr4.fill(6,1,6); //顯然這裡的結束位置超過了陣列長度
console.log(newArr3); // [1, 6, 6, 6, 6]
console.log(newArr4); // [1, 6, 6, 6, 6]
let oldArr5 = [1,2,3,4,5];
let newArr5 = oldArr5.fill(6,1,3);
console.log(newArr5); // [1,6,6,4,5]