0

只是一个我似乎无法找到可靠来源的快速问题。我总是使用||运算符进行速记undefined检查,例如

myVar = myVar || {};

但我想知道这是否意味着它会重新分配 myVar 如果它存在?因此,如果从性能的角度来看,将其扩展if为这样的声明会更好:

if(!myVar) myVar = {};

非常感谢您提前解决这个问题!

4

2 回答 2

1

我无法想象你会在运行时多次运行它。这永远不会成为问题。

如果这是在热功能中,那么无论如何你都会被搞砸,因为隐式/可选的东西在直觉上是非常糟糕的。我无法想象您有一个需要执行此操作的热门功能。您可能正在建立类或模块 - 您可以另外运行 100000 次循环而不会注意到任何事情。

于 2013-10-11T21:47:17.163 回答
0

jsPerf 怎么样?我自己查不出来(手机) http://jsperf.com/browse

于 2013-10-11T09:27:07.167 回答