2012-07-18 406 views
23

可能重複:
return !1 in javascript在Javascript中,1和!0是什麼意思?

在JavaScript文件我今天不得不讀,有其中一個變量被宣佈像階乘一條線,像這樣:

var myVariable = !1; 

然後類似的東西被用作這樣的函數中的參數:

return variable.myFunction(!0); 

任何人都可以解釋我感嘆號在這種情況下意味着什麼,最終,爲什麼這通常用於(好處)?

預先感謝您!

+5

這不是一個因子,它是一個布爾[否定](http://en.wikipedia.org/wiki/Negation)運算符。將'true'變成'false',反之亦然。可能將其他非零的東西變成零? – 2012-07-18 21:32:13

+11

這是可怕的代碼。它是否會拋出['ViolentPsychopathKnowsWhereYouLiveException'](http://www.codinghorror.com/blog/2008/06/coding-for-violent-psychopaths.html)? – 2012-07-18 21:35:05

+0

看到這個問題的標題,我笑得無法控制。我不得不點擊它。 SMH給誰這樣編碼。 – Marlon 2012-07-18 21:46:43

回答

49

該!是布爾NOT運算符。

NOT(!):將語句從true切換到false或從false切換到true。

!0 = true 
!1 = false 

This是一個輝煌的介紹布爾運算符和它們在JavaScript中使用。

+0

非常感謝您的快速解答!我會在可以的情況下(10分鐘內)回答這個問題。 – 2012-07-18 21:36:11

+1

好的答案是,當你不知道變量的結果時,你總是可以嘗試'alert(!1)',這會顯示一個錯誤 – 2012-07-18 21:40:06

+1

或console.log(變量)的彈出窗口, t有[對象]信息 – 2012-07-18 21:43:59