Javascript:将变量定义为函数调用的最有效方法,或者将null定义为变量

Javascript: Most effecient way to define variable to a function call, or if null to a variable?

本文关键字:变量 定义 方法 null 有效 或者 函数调用 Javascript      更新时间:2023-09-26

使用三元操作符需要调用两次函数。

var colour = (tryAdventurousColour() != null) ? tryAdventurousColour() : 'black';

可以在一行完成吗?

编辑:修正语法编辑:像这样,但更好

var color = ((color = tryadventouscolor ()) != null) ?

使用JavaScript的逻辑或操作符:

var colour = tryAdventurousColour() || 'black';

函数tryAdventurousColour()将被执行一次。如果它返回一个"真"值,那么colour变量将被赋给该值,否则colour将是"黑色"。这完全符合您的场景,因为null是一个"假"值。

更一般地说,表达式a || b如果可以转换为真(即"真"),则返回a,否则返回b。请注意,非零数字、非空字符串和对象都将被转换为true。null, undefined, 0, "都将被转换为false。(如果我遗漏了什么,肯定有人会纠正我的)

 var colour = (tryAdventurousColour()) ? tryAdventurousColour() : 'black';