jQuery隐藏/显示条件语句

我做了很多:

var condition = true; if (condition === true) { $('#condition_dependancy').show(); } else { $('#condition_dependancy').hide(); } 

语法上这可以更清洁吗? 我可以写自己的:

 $('#condition_dependancy').hidden(condition); 

但我只是想知道是否有任何内置的东西。

你可以使用toggle

 var condition = true; $('#condition_dependancy').toggle(condition); 

旁注:不要使用像

 if (condition === true) 

除非condition有可能具有不同的“truthy”*值,并且你只希望表达式是真的,如果它是完全true而不是它只是真的。 通常== (boolean)和(在JavaScript中) === (boolean)只是噪声(尽管在JavaScript中有使用===版本的边缘情况)。

身高:

 if (condition) 

和(对于== false / === false case):

 if (!condition) 

*“truthy”:在JavaScript中,类型可以通过表达式强制执行。 在任何地方都需要布尔值,如果你使用的东西不是布尔值,它就会被强制成为布尔值。 强迫true被称为“真实”的价值观; 强迫false东西被称为“虚假”的价值观。 falsey值为0""NaNundefinednull ,当然还有false 。 其他一切都是真实的。

使用toggle()

 $('#condition_dependancy').toggle(condition);