gpt4 book ai didi

javascript - let vs var 在 nodejs 和 chrome 中的性能

转载 作者:数据小太阳 更新时间:2023-10-29 05:18:15 24 4
gpt4 key购买 nike

当我在 chrome 和 nodejs 中测试以下代码时,我得到以下信息:

Chrome :

for loop with VAR: 24.058ms
for loop with LET: 8.402ms

NodeJS:

for loop with VAR: 4.329ms
for loop with LET: 8.727ms

据我了解,由于 block 作用域,LET 在 chrome 中更快。但是有人可以帮我理解为什么它在 NodeJS 中是相反的吗?还是我遗漏了什么?

"use strict";
console.time("for loop with VAR");
for (var i = 0; i < 1000000; i += 1) {
// Do nothing
}
console.timeEnd("for loop with VAR");

console.time("for loop with LET");
for (let i = 0; i < 1000000; i += 1) {
// Do nothing
}
console.timeEnd("for loop with LET");`

PS:不确定这是否不是测试性能的理想方式。

最佳答案

V8 版本附带 node.js 5.10 don't support temporal dead zone用于 let 绑定(bind)。​​

Chrome 而不是使用支持它的 V8 5.0...但是由于 vm 尚未针对处理 TDZ 进行优化,所以现在速度较慢是正常的(我记得读过一些断言用 let 替换 var 的人使代码关于慢 27%)。

关于javascript - let vs var 在 nodejs 和 chrome 中的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36623440/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com