【发布时间】:2017-08-19 07:25:47
【问题描述】:
2017 年 Javascript 中 for() 循环与 .forEach 的当前标准是什么。
我目前正在通过 Colt Steeles 在 Udemy 上的“Web Dev Bootcamp”工作,他在他的教义中偏爱forEach 而不是for。然而,作为课程作业的一部分,我在练习期间搜索了各种东西,我发现越来越多的建议使用for-loop 而不是forEach。大多数人似乎都认为 for 循环更有效。
这是自课程编写以来(大约 2015 年)发生的变化,还是它们的真正优点和缺点,人们将通过更多的经验来学习。
任何建议将不胜感激。
【问题讨论】:
-
为什么要将自己与某人对 2017 年标准的主观想法联系起来?采用永恒的标准,例如编写干净、可维护的代码,了解工程师正在努力使最常用的结构变得非常高效,然后在遇到特定性能问题时优化性能
-
原生
for的纯粹速度很难被击败。forEach()为每次迭代调用一个回调;所以,这显然会带来一些开销。 -
作为一个开发者,我几乎不使用 for 或 foreach,大部分工作都是通过 map、filter 或 reduce 方法完成的。
-
@A.T.只要您不是那些纯粹将
map用于迭代并丢弃它生成的新数组的人之一。我不知道仅在这个网站上我就必须纠正多少人对特定功能的选择。 -
@canon 同意,循环选择很重要,在选择时应牢记此类方法的输出和残留。我相信为了可读性,应该避免使用简单的“for循环”。
标签: javascript loops for-loop foreach