不改变原数组(没有副作用);2....返回一个数组
除了上面提到的 forEach, every, some, filter 属于非纯函数外,我们常用的 push, pop, shift, unshift 方法也属于非纯函数
const arr...console.log(pushRes, arr) // 3 [ 20, 30, 50 ]
console.log(unshiftRes, arr) // 4 [ 5, 20, 30, 50 ]
常用的数组纯函数除了...sort, map, filter 之外,还有 concat 和 slice
const arr = [10, 20, 30, 40]
const concatRes = arr.concat([50...console.log(concatRes) // [10, 20, 30, 40, 50, 60]
console.log(sliceRes) // [ 10, 20, 30, 40 ]
需要区分 slice 和