membaca ini 6 tahun kemudian dan berpikir saya juga akan mengambil hack itu, juga dalam nada TIMTOWTDI ...: D, berharap itu tidak salah 'etiket JS'.
Saya biasanya mengatur var dengan kondisi dan kemudian merujuknya nanti..yaitu;
// var set up globally OR locally depending on your requirements
var hC;
function(el) {
var $this = el;
hC = $this.hasClass("test");
// use the variable in the conditional statement
if (!hC) {
//
}
}
Meskipun saya harus menyebutkan bahwa saya melakukan ini karena saya terutama menggunakan operator ternary kondisional dan ingin kode bersih. Jadi dalam hal ini, yang saya miliki adalah ini:
hC ? '' : foo(x, n) ;
// OR -----------
!hC ? foo(x, n) : '' ;
... alih-alih ini:
$this.hasClass("test") ? '' : foo(x, n) ;
// OR -----------
(!$this.hasClass("test")) ? foo(x, n) : '' ;
if($(this).is(":not(.test)"))
> :)