ES6知识整理(4)--数组的扩展

时间:2024-06-29 11:37:44

ES6知识整理(4)--数组的扩展

最近工作比较忙,基本每天都会加班到很晚。处理一些客户端兼容问题以及提升用户体验的优化。也将近一周没更文了,现在继续es6的学习总结。

ES6知识整理(4)--数组的扩展
上篇回顾

ES6知识整理(三)--函数的扩展

扩展运算符

形式是3个点(...),能起到分割字符串和合并数组的作用

合并数组:(代替concat)

ES6知识整理(4)--数组的扩展

字符串转数组:

ES6知识整理(4)--数组的扩展

Map与Se结构与Generator函数

新面孔啊,之前都没听说过。

1.map结构:[key,value]结构

ES6知识整理(4)--数组的扩展

generator函数:(了解下即可)

go()是个遍历器对象

ES6知识整理(4)--数组的扩展

Array.of() 一组值转为数组

合并成组

(Array.of()方法与Array.from()方法有些类似,都是将传入的参数返回成数组,不同的是Array.of()的参数类型以及长度不固定限制,而Array.from的第一个参数类型有限制,第二个参数为可选参数)

ES6知识整理(4)--数组的扩展

find()与findIndex() 返回数组成员

find(回调函数):

返回数组中第一个符合条件的成员,没有就是undefined

ES6知识整理(4)--数组的扩展

findIndex(回调函数):

返回数组中第一个符合条件的成员的位置,没有就是-1

(value当前值,index当前位置,arr数组本身)

ES6知识整理(4)--数组的扩展

fill()给定值填充数组

1个参数:所有的都变掉

ES6知识整理(4)--数组的扩展

多个参数:改变指定位置的值

(执行后会改变原有数组)

(超出位置不填充)

ES6知识整理(4)--数组的扩展

entries()、keys()、values()遍历数组

keys():遍历数组的下标

ES6知识整理(4)--数组的扩展

结果:

ES6知识整理(4)--数组的扩展

values():遍历数组的值

使用上面的arr

(这个函数需要引入babel-polyfill.js包才能运行 require或script引入)

ES6知识整理(4)--数组的扩展

(若不想引入包,通过keys能就能获取到values了)

ES6知识整理(4)--数组的扩展

结果:

ES6知识整理(4)--数组的扩展

entries():遍历键值对

ES6知识整理(4)--数组的扩展

结果:

ES6知识整理(4)--数组的扩展

includes() 判断是否存在

也可以用来判断字符串的字符,返回boolean

代替indexOf()

比indexOf()更优化

ES6知识整理(4)--数组的扩展

数组的空位

没有值,连undefined都不是

ES6知识整理(4)--数组的扩展

es5的forEach()、filter()、every()、some()会跳过空位

forEach():遍历

ES6知识整理(4)--数组的扩展

结果:

ES6知识整理(4)--数组的扩展

filter():按条件筛选,返回一个新数组

ES6知识整理(4)--数组的扩展

every():检测数组的所有元素都符合条件,返回boolean

ES6知识整理(4)--数组的扩展

some():检测数组中是否有元素符合条件,返回boolean

ES6知识整理(4)--数组的扩展

但是map()会保留空位

map():符合条件的,返回一个新数组

而ES6中entries()、keys()、values()、find()和findIndex()会将空位处理成undefined

ES6知识整理(4)--数组的扩展

ES6知识整理(4)--数组的扩展

坚持学习、总结、更文,才是常态。。。

----公众号:海瑞菌

ES6知识整理(4)--数组的扩展