Javascript'te bir boole değerini değiştirmenin gerçekten kolay bir yolu var mı ?
Şimdiye kadar, özel bir işlev yazmanın dışında aldığım en iyi şey üçlü:
bool = bool ? false : true;
Javascript'te bir boole değerini değiştirmenin gerçekten kolay bir yolu var mı ?
Şimdiye kadar, özel bir işlev yazmanın dışında aldığım en iyi şey üçlü:
bool = bool ? false : true;
Yanıtlar:
bool = !bool;
Bu çoğu dilde geçerlidir.
bool = !bool || true;
Sanırım bir varsayılana sahip olmak için genişletebilirsiniz .
Boolean'ın bir sayıya (0 veya 1) dönüştürülmesini önemsemiyorsanız , Bitwise XOR Atama İşleci'ni kullanabilirsiniz . Şöyle ki:
bool ^= true; //- toggle value.
Bu, özellikle uzun, açıklayıcı boole isimleri (EG) kullanıyorsanız iyidir:
var inDynamicEditMode = true; // Value is: true (boolean)
inDynamicEditMode ^= true; // Value is: 0 (number)
inDynamicEditMode ^= true; // Value is: 1 (number)
inDynamicEditMode ^= true; // Value is: 0 (number)
Bunu taramak benim için her satırdaki değişkeni tekrar etmekten daha kolaydır.
Bu yöntem tüm (büyük) tarayıcılarda (ve çoğu programlama dilinde) çalışır.
bool ^= 1
bool === false
veya bool === true
artık yapamazsınız . Mevcut kodu kırabilir, bu yüzden dikkatli olun.
Bunu iş başında görelim:
var b = true;
console.log(b); // true
b = !b;
console.log(b); // false
b = !b;
console.log(b); // true
Her neyse, şu anda sahip olduğunuzdan daha kısa bir yol yoktur.