将三元运算符翻译成 if/else 语句?
Translate ternary operator into if/else statement?
我仍在学习 javascript 语言,并且我 运行 正在学习这段代码。我想知道是否有人可能 "translate" 将其放入 if/else 语句中,以使我更容易理解发生了什么?谢谢!
var offsetX = (w < 0) ? w : 0;
var offsetY = (h < 0) ? h : 0;
三元运算符始终采用 condition ? true expr : false expr
的形式。查看此文档以获取解释:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Conditional_Operator
因此,在您的情况下,冒号 (:
) 之前的表达式成为 if
条件的一部分,冒号之后的表达式成为 else
条件的一部分:
// declare offsetX
var offsetX
if (w < 0) {
offsetX = w;
} else {
offsetX = 0;
}
// for offsetY has the same concept
好了:
if (w<0)
{
offsetX = w;
}
else
{
offsetX = 0;
}
offsetY
也一样
var offsetX, offsetY;
if(w<0)
offsetX = w;
else
offsetX = 0;
if(h<0)
offsetY = h;
else
offsetY = 0;
我仍在学习 javascript 语言,并且我 运行 正在学习这段代码。我想知道是否有人可能 "translate" 将其放入 if/else 语句中,以使我更容易理解发生了什么?谢谢!
var offsetX = (w < 0) ? w : 0;
var offsetY = (h < 0) ? h : 0;
三元运算符始终采用 condition ? true expr : false expr
的形式。查看此文档以获取解释:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Conditional_Operator
因此,在您的情况下,冒号 (:
) 之前的表达式成为 if
条件的一部分,冒号之后的表达式成为 else
条件的一部分:
// declare offsetX
var offsetX
if (w < 0) {
offsetX = w;
} else {
offsetX = 0;
}
// for offsetY has the same concept
好了:
if (w<0)
{
offsetX = w;
}
else
{
offsetX = 0;
}
offsetY
var offsetX, offsetY;
if(w<0)
offsetX = w;
else
offsetX = 0;
if(h<0)
offsetY = h;
else
offsetY = 0;