【发布时间】:2011-10-12 10:23:12
【问题描述】:
y = x?0:0x80
从谷歌搜索冒号似乎是一个三元运算符。
【问题讨论】:
标签: javascript ternary-operator
y = x?0:0x80
从谷歌搜索冒号似乎是一个三元运算符。
【问题讨论】:
标签: javascript ternary-operator
它是一个三元运算符。如果 x 为真,它将 0 分配给 y,否则分配 0x80。
【讨论】:
是的,它是一个ternary operation,如果x 是true 或0x80,则为y 分配0 的值。
【讨论】:
没错。 (正确的名称是 conditional operator。它是 a 三元运算符,因为它需要三个操作数,但它通常被误命名为 the 三元运算符,因为它是唯一的 JavaScript 运算符这样做。)
代码大致相当于这样:
var y;
if (x) {
y = 0;
}
else {
y = 0x80;
}
【讨论】:
翻译成:
if(x) then
y=0
else
y=0x80
但要短得多。
【讨论】:
以上都是肯定的,但它也在检查 x 的存在。如果 x 不存在或者是null,y = 0x80。
【讨论】: