ES6的数组扩展( fill()方法 )
程序员文章站
2024-02-14 17:10:40
...
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]