NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
~~~js let arrs = new Array(100000); console.time('for'); for (let i = 0; i < arrs.length; i++) { }; console.timeEnd('for'); console.time('forEach'); arrs.forEach((arr) => { }); console.timeEnd('forEach'); for: 2.263ms forEach: 0.254ms ~~~ 在10万这个级别下,`forEach`的性能是`for`的十倍 ~~~js for: 2.263ms forEach: 0.254ms ~~~ 在100万这个量级下,`forEach`的性能是和`for`的一致 ~~~js for: 2.844ms forEach: 2.652ms ~~~ 在1000万级以上的量级上 ,`forEach`的性能远远低于`for`的性能 ~~~js for: 8.422ms forEach: 30.328m ~~~ > 其中forEach 里操作了toObject 以及判断是否终止循环条件比for loop 复杂一点。 ## 摘自 [第 72 题: 为什么普通`for`循环的性能远远高于`forEach`的性能,请解释其中的原因。](https://www.muyiy.cn/question/js/72.html)