如何在JavaScript中使用内联if语句?也有内联else语句吗?

就像这样:

var a = 2;
var b = 3;

if(a < b) {
    // do something
}

当前回答

如果要内联编写if语句,其中的代码应该只有一条语句:

if ( a < b ) // code to be executed without curly braces;

其他回答

有一个三元运算符,像这样:

var c = (a < b) ? "a is less than b"  : "a is not less than b";

如果要内联编写if语句,其中的代码应该只有一条语句:

if ( a < b ) // code to be executed without curly braces;

(条件)?expressionTrue: expressionFalse;

例子

int a=20, b=10;

if (a>b) {
  cout << "a greater than b";
} else {
  cout << "b greater than a";
} 

你可以简单地写:

int a=20, b=10;

(a>b) ? cout << "a greater than b" : cout << "b greater than a";

用简单的英语,语法解释如下:

if(condition){
    do_something_if_condition_is_met;
}
else{
    do_something_else_if_condition_is_not_met;
}

可以写成:

condition ? do_something_if_condition_is_met : do_something_else_if_condition_is_not_met;

简化三元运算符

var locked = 1;
var canChange = locked != 1 ? true : false;

如果锁定为1,则canChange变量被设置为false,否则,它被设置为true。 在这种情况下,你可以使用一个布尔表达式来简化它,如下所示:

var locked = 1;
var canChange = locked != 1;

用于多个JavaScript三元运算符 下面的例子展示了如何在同一个表达式中使用两个三元运算符:

var speed = 90;
var message = speed >= 120 ? 'Too Fast' : (speed >= 80 ? 'Fast' : 'OK');
console.log(message);

当三元运算符使代码更易于阅读时,使用它是一种最佳实践。如果逻辑包含很多If…Else语句,你不应该使用三元操作符。