JS遍历总结
2021-05-25 09:35:17 12 举报
AI智能生成
登录查看完整内容
JavaScript遍历主要有三种方式:for循环、forEach方法和map方法。for循环是最基础的遍历方式,通过设置起始值、结束值和步长来控制遍历过程。forEach方法是数组自带的遍历方法,可以直接对数组中的每个元素进行操作。map方法也是数组自带的遍历方法,但它会返回一个新的数组,不会改变原数组。此外,JavaScript还提供了一些其他遍历方法,如some、every、filter等,它们都接受一个回调函数作为参数,用于对数组中的每个元素进行判断或处理。总之,JavaScript提供了丰富的遍历方式,可以根据具体需求选择合适的方法来实现遍历操作。
作者其他创作
大纲/内容
对象遍历
Object.keys()(推荐)
forin(推荐)
循环遍历对象自身的和继承的可枚举属性(不含Symbol属性).
Object.getOwnPropertyNames(obj)(推荐)
Reflect.ownKeys(obj)
JS遍历总结
数组遍历
for(推荐)
当数组较大时优化效果才会比较明显
foreach(推荐)
没有返回值
数组中有几项,那么传递进去的匿名回调函数就需要执行几次
map
map的回调函数中支持return返回值;return的是啥,相当于把数组中的这一项变为啥(并不影响原来的数组,只是相当于把原数组克隆一份,把克隆的这一份的数组中的对应项改变了)
forof(推荐)
for (var value of myArray) {console.log(value);}
可以正确响应break、continue和return语句
ES6中,新增了for-of遍历方法。它被设计用来遍历各种类数组集合,例如DOM NodeList对象、Map和Set对象,甚至字符串也行
// for-of遍历数组,不带索引,i即为数组元素for(let i of arrTmp){ console.log(i)}//输出 \"value1\" \"value2\" \"value3\" // for-of遍历Map对象let iterable = new Map([[\"a\
这种方式是es6里面用到的,性能要好于for…in,但仍然比不上普通for循环。该种方式通常是直接获取显性的值,而无法直接获取索引。
var arr=[\"张三\
filter
every
some
some()是对数组中每一项运行指定函数,如果该函数对任一项返回true,则返回true。
reduce
reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值。
reduce接受一个函数,函数有四个参数,分别是:上一次的值,当前值,当前值的索引,数组
reduce还有第二个参数,我们可以把这个参数作为第一次调用callback时的第一个参数
reduceRight
reduceRight()方法的功能和reduce()功能是一样的,不同的是reduceRight()从数组的末尾向前将数组中的数组项做累加。
find
stu.find((element) => (element.name == '李四'))
find()方法返回数组中符合测试函数条件的第一个元素。否则返回undefined
findIndex
对于数组中的每个元素,findIndex 方法都会调用一次回调函数(采用升序索引顺序),直到有元素返回 true。只要有一个元素返回 true,findIndex 立即返回该返回 true 的元素的索引值。如果数组中没有任何元素返回 true,则 findIndex 返回 -1
findIndex 不会改变数组对象。
keys,values,entries
ES6 提供三个新的方法 —— entries(),keys()和values() —— 用于遍历数组。它们都返回一个遍历器对象,可以用for...of循环进行遍历,唯一的区别是keys()是对键名的遍历、values()是对键值的遍历,entries()是对键值对的遍历
0 条评论
回复 删除
下一页