什么更有效?检查==或只是改变变量?

tom*_*tom 3 javascript performance actionscript memory-efficient

想象一下,我有一个名为X的变量.让我们说每5秒我想让X =真.(在这5秒之间可能是真或假,但是当5秒钟时,它会重置为真).

检查值是否已经为真是否更有效,如果不是,则将其重新分配为true?或者只是X =真?

换句话说,哪个会运行得更快?

if(x==false){
    x = true;
}
Run Code Online (Sandbox Code Playgroud)

VS

x = true;
Run Code Online (Sandbox Code Playgroud)

一方面,如果不必要,第一个程序不会改变变量.另一方面,第二个程序不需要检查X等于什么; 它直接潜入.

Mar*_*ers 8

  • 它几乎总是无所谓.编写最容易理解和维护的代码.只在必要时进行优化.
  • 最好的方法是测试它.描述您的代码.
  • 哪个更快可能取决于浏览器.
  • 哪个更快取决于变量通常是真还是假.
  • 话虽如此,我猜在大多数情况下设置变量而不进行测试会更快.