我想知道
之间是否有任何性能差异var DATA = {a: 1, b: 2, ....};
function f() {
... use but do not modify DATA;
}
和
function f() {
var DATA = {a: 1, b: 2, ....};
... use but do not modify DATA;
}
在现代Javascript引擎中。理论上,在后面的代码中,必须在每个函数调用上创建结构。但是引擎可以看到它没有被改变并保留它以供重复使用。
我完全清楚过早优化陷阱和可读性比性能更重要;我只是好奇。由于jsperf失败,我认为没有简单的方法可以自己获得一些数据。
答案 0 :(得分:0)
相比之下会有性能差异。当你比较两者的时间表时。我们将观察到具有局部变量的函数可以快速工作。无论你用局部变量调用函数多少次,性能都会以第二种类型获胜。