前端数组遍历的 “六把钥匙”:解锁 forEach、map、filter、some、every、find 六法核心差异(三)

25 阅读1分钟

元素获取与变换类 at() / findLast() / flatMap() 等


核心:精准获取元素、反向查找、数组变换(部分方法支持不可变操作)。

关键区别:标★的为「不可变方法」(返回新数组,不修改原数据);标●的为「原地方法」(直接修改原数组)

方法汇总

image

1. 正负索引获取元素 at()

image

2. 从后查找最后一个偶数 findLast()

image

3. 从后查找大于5的元素索引 findLastIndex()

image

4. 反转数组(对比修改原数组/返回新数组)reverse() / toReversed()

image

5. 排序(返回新数组,不修改原数组)toSorted() ★

image

6. 不可变插入元素(仅插入不删除) toSpliced() ★

image

7. 不可变删除/插入元素 toSpliced() ★

image

8. 复制元素到指定位置 copyWithin(0,3,5) 索引指:3,4 不包含5 copyWithin() 

image

9. 填充数组元素(指定范围)fill(0,1,4) 索引是指:1到3,不包含4 fill() 

image

10. 数组扁平化(指定层级)flat()

image

11. 映射后扁平(map + flat(1))flatMap()

image

12. 从前往后查找元素索引 findIndex()

image

13. 查找元素首次出现索引 indexOf()

image

14. 从后查找元素首次出现索引 lastIndexOf()

image

15. 判断数组是否包含指定元素 includes()

image

16. 不可变修改指定索引元素 with() 

image

17. 截取数组片段(返回新数组)slice() 

image

18. 原地排序数组(修改原数组)sort()

image

19. 从右往左归约数组 reduceRight()

image

获取示例代码,请关注公众号。回复:2abbd

微信公众号:bugcome