ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
~~~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)