Array--是否改变原数组的方法

改变原数组:
pop:删除最后一个并返回,改变原数组
push:向数组末尾添加元素,并返回新的长度,改变原数组
unshift:向数组开头添加元素,并返回新的长度,改变原数组
reverse:颠倒数组顺序,改变原数组
shift:将第一个元素删除并且返回,空即为undefined,改变原数组
splice:splice(start,length,item)新增删除替换数组元素,返回被删除数组,无删除则不返回,改变原数组
sort:对数组排序,改变原数组,

fill: arr.fill(value[, start[, end]])

用一个固定值填充一个数组中从起始索引到终止索引内的全部元素

例:

let numbers = [1,2,3,4];
numbers.fill(1, 2);
console.log(numbers.toString());  //    1,2,1,1
numbers.fill(0,1,3);
console.log(numbers.toString());  //    1,0,0,1

copyWithin:  arr.copyWithin(target[, start[, end]])

浅复制数组的一部分到同一数组中的另一个位置,并返回它,而不修改其大小

例:

let numbers = [1, 2, 3, 4];
//    从索引    2    的位置开始粘贴
//    从数组索引    0    的位置开始复制数据
//    在遇到索引    1    时停止复制
numbers.copyWithin(2,    0,    1);
console.log(numbers.toString());    //    1,2,1,4 

不改变原数组:
concat:连接多个数组,返回新的数组,不改变原数组
join:将数组中所有元素以参数作为分隔符放入一个字符串,不改变原数组
slice:slice(start,end),返回选定元素,不改变原数组

原文地址:https://www.cnblogs.com/phen/p/8824670.html