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

就像这样:

var a = 2;
var b = 3;

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

当前回答

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

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

其他回答

<div id="ABLAHALAHOO">8008</div>
<div id="WABOOLAWADO">1110</div>

parseInt( $( '#ABLAHALAHOO' ).text()) > parseInt( $( '#WABOOLAWADO ).text()) ? alert( 'Eat potato' ) : alert( 'You starve' );

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

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

你可以使用三元运算符,它等同于一个简单的if, else。

三元操作,调用两个结果的函数:

(a < b) ? DoSomething() : DoSomethingElse();

三元运算,只对其中一个结果调用函数:

(a < b) ? DoSomething() : {}; or (a < b)?.DoSomething();

这个问题本质上不是:我能写出下面的东西吗?

if (foo)
  console.log(bar)
else
  console.log(foo + bar)

答案是,是的,上面的内容可以翻译。

但是,在做以下事情时要小心

if (foo)
  if (bar)
    console.log(foo)
  else 
    console.log(bar)
else 
  console.log(foobar)

请务必将模棱两可的代码用大括号括起来,因为上述代码将抛出异常(类似的排列将产生不希望看到的行为)。

你不一定需要jQuery。JavaScript本身就可以做到这一点。

var a = 2;
var b = 3;    
var c = ((a < b) ? 'minor' : 'major');

如果值为真,则c变量为次要值,如果值为假,则为主要值。


这被称为条件(三元)运算符。

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/Conditional_Operator