以下哪些Array对象的方法不会更改原有数组?
A
concat()
B
splice()
C
map()
D
sort()
正确答案:AC
会改变数组的方法:
push()
pop()
shift()
unshift()
splice()
sort()
reverse()
forEach()
不会改变数组的方法:
filter()
concat()
slice()
map()
concat函数连接多个array,不改变原array,返回连接的结果
map函数对array中的每一项执行指定函数,将每一项执行的结果组成新的array返回
sort() 方法用原地算法对数组的元素进行排序,并返回数组,所以会改变原数组
splice函数对array进行操作,会改变array
一般在使用sort或者reverse等可以改变数组内顺序的函数时,我们是不需要赋值给新的变量的,直接a.sort()即可,数组内的顺序已经改变了
如果想要想要将返回值赋值给变量b,如图所示,b===a,所以sort函数并没有返回一个新的数组
本题”是否更改原始数组“本质上问的不是数组的值发生变化了没有,而是是不是返回了新的数组,所以不选sort
标签:sort,map,函数,更改,改变,数组,Array,array From: https://www.cnblogs.com/longmo666/p/17824655.html