美文网首页
JS中 forEach()和for循环语句的区别

JS中 forEach()和for循环语句的区别

作者: CoderZb | 来源:发表于2021-09-04 17:15 被阅读0次

需求

有一个白名单功能,当前登录用户在白名单内的话,直接进入首页,否则进入认证页面。
当前登录为cc,白名单列表为["aa", "bb", "cc", "dd", "ee", "ff"],使用forEach()和for()看看有啥问题:


for循环做法:搭配return

从打印结果来看,当遍历到cc所在的索引就跳出整个for循环,因此采取该做法可以实现这个需求。

var nameListArray = ["aa", "bb", "cc", "dd", "ee", "ff"];
for(var i = 0; i < nameListArray.length; i++) {
    console.log('index为---',i);
    if(nameListArray[i] == 'cc') {
      console.log('匹配到的索引为---',i,'name为--',nameListArray[i]);
           return true;
    }
  }

打印结果

image.png

forEach()做法:搭配return

从打印结果来看,当遍历到cc所在的索引时,就会终止本次循环,进行下一个i的循环,并不会跳出整个循环。因此采取该做法不符合该需求。

var nameListArray = ["aa", "bb", "cc", "dd", "ee", "ff"];
  nameListArray.forEach((item, i) => {
    console.log('i为---', i);
    if (nameListArray[i] === 'cc') {
      console.log('匹配到的索引为---', i, 'name为--', nameListArray[i]);
      return true;
    }
  })

打印结果

image.png

总结:
1:forEach()搭配return不支持中断整个循环的功能,而for循环搭配return支持。
2:forEach()更加简洁和高效,只是有局限性,1就是一个局限性;for循环适用性更广。

相关文章

  • JS中 forEach()和for循环语句的区别

    需求 有一个白名单功能,当前登录用户在白名单内的话,直接进入首页,否则进入认证页面。当前登录为cc,白名单列表为[...

  • JavaScript中的for...in 、for...of、f

    初学javaScript的时候,我们总是容易混淆对于数组和对象的遍历方法。js中循环语句有forEach,for ...

  • js 循环

    js中forEach,for in,for of循环的用法 js的 for...in 和 for...of的用法 ...

  • js中的循环遍历方法对比

    JS循环大总结, for, forEach,for in,for of, map区别 map(数组方法): 特性:...

  • PHP break和continue语句

    break 语句break 语句用于终止本次循环,在 while、do while 和 foreach 循环语句中...

  • js forEach map &&&

    原生JS forEach()和map()遍历的区别以及兼容写法 一、原生JS forEach() 和map()**...

  • 碎知识

    forEach、for in、for、for of循环的区别 for循环---编程式forEach循环---声明式...

  • 2017.08.18

    问题 JS中foreach语义中希望使用break打断循环失败。 JS中Foreach为什么不能break?如何实...

  • PHP编程指南(四)控制语句

    if else 语句 switch语句 for循环 普通for循环 for循环嵌套 foreach循环——用于遍历...

  • JS走过的第二个大坑

    js中for循环和forEach的区别:前者比较官方,功能强大,效率比后者高;后者简单,不能中断,比如不能使用br...

网友评论

      本文标题:JS中 forEach()和for循环语句的区别

      本文链接:https://www.haomeiwen.com/subject/ajmrwltx.html