2015-11-11 55 views
4

我在jQuery和Telerks的JS的源代碼中看到!0!1的使用相當多。我最看到它的回報聲明可能會影響它的使用。jQuery使用return!1或返回0

目的是什麼?這是一種優化?

Example from Kendo

+4

它被縮小了。字節越少意味着更小的腳本,這意味着可能更快的加載時間這是[Google封閉編譯器](https://closure-compiler.appspot.com/home)執行的優化之一。 –

回答

5

這對縮小文件一招:

!0 === true 
!1 === false 

它只是做同樣的事情用更少的字符。

+0

'1'或'0'本身是不夠的?爲什麼否定它? –

+2

@FrankV所以返回一個'boolean'。 'typeof 0 ===「number」'而typeof!0 ===「boolean」'。 –

+0

的確,我應該使用'==='而不是'==' – TbWill4321

1

我想技術上這是一個優化,但不是我鼓勵你手動完成的一個。一個縮小器會爲你做這個。

這只是返回一個布爾值。

!0 == true // because 1 is true, 0 is false, so NOT 0 is true. 
!1 == false // same as above logic but flipped. 
相關問題