2015-01-20 59 views
1

在一個如果有條件的情況下,什麼時候使用雙重否定有意義?我發現這個模式幾次:Javascript - 爲什麼使用雙重否定

JS

if(!!children.length) { ...} 
+0

''!!使得一個布爾出表達的,但在'if'是無用的。 – elclanrs 2015-01-20 23:05:53

+0

請參閱本[http://stackoverflow.com/questions/10467475/double-negation-in-javascript-what-is-the-purpose][1] [1]:HTTP:// stackoverflow.com/questions/10467475/double-negation-in-javascript-what-is-the-purpose – imnancysun 2015-01-20 23:06:57

+0

在IF中使用布爾轉換決不會有意義,IF爲您做到了這一點 – dandavis 2015-01-20 23:07:12

回答

5

這是把一個正常表達爲布爾的常用方法。它在if語句中沒有任何意義,因爲它將給定的表達式評估爲布爾值,但在外部很有用。

例如:

var isEmpty = !!children.length;