我學習javascript
並我想明白是怎麼回事,有if
聲明,如下所示(從javascript
教程拍攝):一個簡單的if語句在javascript需要交代
var count = 2;
if (count & 2) {
document.write(count);
}
因爲它將會寫計數。但是,如果我設置計數到(即,使得計數%2仍然)爲什麼計數不寫?
我學習javascript
並我想明白是怎麼回事,有if
聲明,如下所示(從javascript
教程拍攝):一個簡單的if語句在javascript需要交代
var count = 2;
if (count & 2) {
document.write(count);
}
因爲它將會寫計數。但是,如果我設置計數到(即,使得計數%2仍然)爲什麼計數不寫?
你都落入位操作:當達到truthy
值
if
將被調用。
2&2
是: 10 & 10
這是10
是2
是truthy
所以如果succeedes
但4&2
是100 & 010
是0
這是falsy
。
好嗎?
我明白了 - 謝謝。我當時很蠢 – RGriffiths
@RichardGriffiths不,你沒有。不要低估自己。 –
我的意思是我知道明白。我從其他人那裏得到了......真的。感謝您的幫助 - 現在也明白了。 – RGriffiths
&
意味着bitwise and
count = 2
count & 2 => 10 & 10 = 10 (true)
count = 4
count & 2 => 100 & 010 = 0 (false)
從沒有把%和使用&我犯了一個愚蠢的錯誤,但現在瞭解到二進制比較。非常有用的感謝。 – RGriffiths
4 2 == 0這是falsey ... –
爲什麼'計數%2'重要嗎?你沒有測試。 – Quentin
不要混淆4和2與4%2 – doldt