在最近学习并使用ES6过程中,在一次循环数组并且作判断时返回值无效,return拿到的结果是undefined

我们分别使用for循环和forEach方法来验证:

结果:for循环里的可以return终止遍历,forEach里的return不能终止遍历

JavaScript forEach中return失效问题解决方案

以上是return终止for循环的遍历和forEach循环的遍历测试。

-------------------------------------------------------------- 分 割 线 ---------------------------------------------------------------------------------

我原本要实现的是通过判断条件从而得到一个值返回出去,先来看看效果吧

打印结果如图:

JavaScript forEach中return失效问题解决方案

显然:Array的forEach()方法是不能return的。

我的解决办法是:定义一个变量,把我想返回的值保存下来,最后返回出去 (最佳方法待补充)

控制台打印结果:

JavaScript forEach中return失效问题解决方案

如图成功拿到符合判断条件的这个数了

技术总结:forEach 无法在所有元素都传递给调用的函数之前终止遍历 / 在forEach方法里 return 无效

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

标签:
JavaScript,forEach,return,失效,解决

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“JavaScript forEach中return失效问题解决方案”
暂无“JavaScript forEach中return失效问题解决方案”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。