JavaScript中的简短if语句

时间:2016-07-27 13:51:29

标签: javascript jquery

我已经看过几次这个问题,我也看过三元运算符的建议和使用。

我想知道如何在我的示例中使用Ternary运算符,如果这是最好的方法。

我的if语句:

if (dateSel.stock_qty <= 20) {
   $(".stock_left").css("display", "block");
} else if (dateSel.stock_qty == 0) {
   // do nothing
}

我将其更改为:

dateSel.stock_qty <= (20) ? "Y" : "N";

YN引用了什么。我可以在引号内放置函数吗?

对于这种类型的if语句,Ternary是处理它的最短路径,还是有更好的方法。

3 个答案:

答案 0 :(得分:4)

三元不会缩短那里的东西,因为无论如何它都需要第二部分,不像常规条件。此外,三元并非真正用于这些目的。

使用此功能,只需删除else块和括号:

if(dateSel.stock_qty <= 20)$(".stock_left").css("display", "block");

答案 1 :(得分:0)

这种if语句?我认为在这种情况下你不需要else if块,所以你可以只有一个if语句。三元在这里不会帮助你,因为在:之后你甚至不想要一些东西。

答案 2 :(得分:0)

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

  • Ternary基本上是一种用更简单的方式(或者你可以说是“更清洁”)方式编写IF语句的方法。没有任何真正的优势。但是如果你想使用它,它应该是这样的:

    dateSel.stock_qty&lt; =(20)? $(“。stock_left”)。css(“display”,“block”):“0”;

但请注意,此处不能包含“else if”部分!在分号':'

之后只是一个纯粹的“别的”

编辑:更改了分号并添加了数字以满足这种情况。请注意,如下所述,执行此操作并不是一个好习惯!