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
, ""
, NaN
, undefined
, null
,当然还有false
。 其他一切都是真实的。
使用toggle()
:
$('#condition_dependancy').toggle(condition);