只是一个我似乎无法找到可靠来源的快速问题。我总是使用||
运算符进行速记undefined
检查,例如
myVar = myVar || {};
但我想知道这是否意味着它会重新分配 myVar 如果它存在?因此,如果从性能的角度来看,将其扩展if
为这样的声明会更好:
if(!myVar) myVar = {};
非常感谢您提前解决这个问题!
只是一个我似乎无法找到可靠来源的快速问题。我总是使用||
运算符进行速记undefined
检查,例如
myVar = myVar || {};
但我想知道这是否意味着它会重新分配 myVar 如果它存在?因此,如果从性能的角度来看,将其扩展if
为这样的声明会更好:
if(!myVar) myVar = {};
非常感谢您提前解决这个问题!
我无法想象你会在运行时多次运行它。这永远不会成为问题。
如果这是在热功能中,那么无论如何你都会被搞砸,因为隐式/可选的东西在直觉上是非常糟糕的。我无法想象您有一个需要执行此操作的热门功能。您可能正在建立类或模块 - 您可以另外运行 100000 次循环而不会注意到任何事情。
jsPerf 怎么样?我自己查不出来(手机) http://jsperf.com/browse