Ina*_*thi 239 javascript syntax operators conditional-operator
我遇到了以下几行
hsb.s = max != 0 ? 255 * delta / max : 0;
Run Code Online (Sandbox Code Playgroud)
什么的?,并:在这方面是什么意思?
Gre*_*reg 353
它有以下形式:condition?value-if-true:value-if-false
把它想象?成"然后"和:"别的".
你的代码相当于
if (max != 0)
hsb.s = 255 * delta / max;
else
hsb.s = 0;
Run Code Online (Sandbox Code Playgroud)
Jas*_*n S 37
为了清晰起见,正确地括号括起来
hsb.s = (max != 0) ? (255 * delta / max) : 0;
Run Code Online (Sandbox Code Playgroud)
意思是回归
255*delta/max 如果最大!= 00 如果max == 0使用括号括起来时,这可能会更清楚,如下所示:
hsb.s = (max != 0) ? (255 * delta / max) : 0;
Run Code Online (Sandbox Code Playgroud)
它的作用是评估第一个括号中的部分.如果结果为真则那么后面的部分?并在:返回之前.如果为false,则返回以下内容:
hsb.s = max!= 0?255*delta/max:0;
?是一个三元运算符,它与if结合使用:
!=意味着不等于
所以,这条线的长形式将是
if (max != 0) { //if max is not zero
hsb.s = 255 * delta / max;
} else {
hsb.s = 0;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
189636 次 |
| 最近记录: |