我想在if语句条件中检查元素是否存在,如果是,则使用该元素作为比较的一部分。像这样:
if( if($(".element").length > 0) { $.contains( $(".element")[0], $("[ele]")[0] )} ) {...
我知道我可以嵌套if语句,例如:
if($(".element").length > 0) {
if($.contains( $(".element")[0], $("[ele]")[0] )) {....
但是有更短的方法吗? if语句是否可以以某种方式在另一个if语句的条件中使用?
答案 0 :(得分:1)
您可以使用if($(".element").length > 0 && $.contains( $(".element")[0], $("[ele]")[0] )) {
运算符链接两个条件:
&&
如果第一个条件失败( CONSTRAINT
chk_issue_date
CHECK
(
Issue_Date,
( TO_CHAR( Issue_Date, 'yyyy-mm-dd' ) <= TO_CHAR( SYSDATE(), 'yyyy-mm-dd' )
)
)
之前的代码),它将短路而不执行第二个条件。
答案 1 :(得分:0)
您可以使用&&
(和)运算符。如果&&
左侧的内容为false,则它不会评估&&
的右侧,因此您不必担心来自||
的任何错误元素不存在。 (这称为短路评估,而||
(或)做了类似的事情,除了if($(".element").length > 0 && $.contains( $(".element")[0], $("[ele]")[0] )) ...
如果左侧是真的则不评估右侧。)所以
if
此处没有必要,但如果您想在表达式中使用else
- ?:
,则可以使用condition ? a : b
(三元条件)运算符。 if(condition) a else b
与x = (condition ? a : b)
类似,但它实际上是一个表达式,因此,if(condition) x = a; else x = b;
与&&
相同。