和&& JavaScript中的运算符是短路的,这意味着如果左侧是假的,则根本不评估右侧.这就是为什么fn&&即使fn为falsey(null,undefined等),fn()也是安全的.
“生成的代码”完全取决于JavaScript引擎,但我希望它在两种情况下都非常相似(&&和if).
从运行速度更快的角度来看,这不是一种“优化”,而是在写作时间较短的意义上(特别是如果像我一样,如果语句你永远不会离开{}).对于不熟悉该语言的人来说,它的缺点是稍微不那么清楚,但这是一个很快习惯的成语.
原文链接:https://www.f2er.com/js/156077.html