JavaScript 循环遍历总结

203 阅读1分钟

数组遍历

方法是否改变原数组特点
forEach()没有返回值
map()有返回值,可链式调用
for offor...of遍历具有Iterator迭代器的对象的属性,返回的是数组的元素、对象的属性值,不能遍历普通的obj对象,将异步循环变成同步循环
filter()过滤数组,返回包含符合条件的元素的数组,可链式调用
every()、some()some()只要有一个是true,便返回true;而every()只要有一个是false,便返回false.
find()、findIndex()find()返回的是第一个符合条件的值;findIndex()返回的是第一个返回条件的值的索引值
reduce()、reduceRight()reduce()对数组正序操作;reduceRight()对数组逆序操作
keys()、values()、entries()keys() 返回数组的索引值;values() 返回数组元素;entries() 返回数组的键值对。

对象遍历

对象方法遍历基本属性遍历原型链遍历不可枚举属性遍历Symbol
for in
Object.keys()
Object.getOwnPropertyNames()
Object.getOwnPropertySymbols()
Reflect.ownKeys()

其他遍历方法

1.for
2.while
3.do/while
4.for await of (es2018中引入的方法)