【发布时间】:2019-03-21 17:46:00
【问题描述】:
Javascript / ES6 是否支持Elvis 运算符?
例子:
var x = (y==true) ?: 10;
示例 2:
var debug = true;
debug ?: console.log("Value of x:" + x);
【问题讨论】:
-
不,没有 Elvis 运算符,但您可以使用
||-var x = y || 10例如或debug || console.log() -
除了@vlaz 说的,你还可以写一行 if 语句
if (y === true) 10;请注意,由于缺乏可读性,这不是最流行的 if 语句编写方式。 -
||是猫王算子。 -
@SalmanA
||仅评估条件是否为假。 Elvis 运算符评估条件是否为真。所以&&更接近猫王算子。 -
@1.21gigawatts no.请参阅 wiki 上的定义,其中说 如果该操作数被认为是 true,则返回其第一个操作数,否则评估并返回其第二个操作数。这就是
||所做的:1 || 2 // 1与 @987654333 @.
标签: javascript ecmascript-6 ecmascript-2016