js常用循环方式的比较

Posted xudandan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js常用循环方式的比较相关的知识,希望对你有一定的参考价值。

for in  VS  for of

1、for in 取 key; for of 取 value;

2、for of 只能用于数组遍历,for in还可以用于对象属性的遍历;

3、同是便利数组时,由于1属性,for in只能遍历数组元素的索引值,而for of可以遍历出所有数组元素;

4、for in能遍历数组上手动添加的值或者是该数组原型上的值,而for of只能遍历改数组的value;

5、for...of和for...in循环可以与break、continue配合使用,跳出循环,不能使用return,会报错;

6、无论是 for...in 还是 for...of 都不能遍历出 Symbol 类型的值,遍历 Symbol 类型的值需要用 Object.getOwnPropertySymbols() 方法;

 

forEach VS map VS $.each

1、forEach()返回值是undefined,不可以链式调用;

2、map()返回一个新数组,原数组不会改变;

3、没有办法终止或者跳出forEach()循环,除非抛出异常,使用break报错,使用return会跳出本次循环,继续下一次的循环;

4、$.each()方法规定为每个匹配元素规定运行的函数,return true跳过当过循环return false跳出所有循环;

5、参数只有$.each(key, value),其他均为value,key形式;

6、forEach中回调函数的最后一个参数是当前数组本身,自身的第二个函数是执行回调时,this的指向,默认是this;

7、map()必须要有返回值,否则返回的是包含被map数组长度的undefind值;

 

 

以上是关于js常用循环方式的比较的主要内容,如果未能解决你的问题,请参考以下文章

JS几种遍历方式比较

cocos JS 几种循环遍历对象的比较

javascript 数组遍历,几种循环方式的比较。

js 循环遍历变量的几种方式

JS数组遍历方式总结

spring boot thymeleaf常用方式