色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

jquery 3個嘆號

錢瀠龍2年前9瀏覽0評論

在 jQuery 中,我們經(jīng)常會看到!!!這種三個嘆號的用法,它的作用是什么呢?

在 JavaScript 中,!!用于將一個變量轉(zhuǎn)換為布爾值,其實就是將變量強(qiáng)制類型轉(zhuǎn)換為 boolean 類型。那么!!!又有什么用呢?它其實就是將變量進(jìn)行兩次取反,相當(dāng)于兩次的布爾類型取反,最終返回的還是布爾類型。

舉個例子:

var test = 'hello world';console.log(!!test); // trueconsole.log(!!!test); // false

我們可以看出來,!!'hello world'的取反結(jié)果為 true,而!!!(!!'hello world')的取反結(jié)果為 false。所以說,被三個嘆號包圍的表達(dá)式最終會被轉(zhuǎn)換為布爾類型。

那么,為什么會在 jQuery 中頻繁看到這種用法呢?其實這是因為在 jQuery 的源碼中,經(jīng)常需要判斷一個對象是否為假值(undefined,null,false,0,NaN,''),所以作者使用了!!!來將變量強(qiáng)制類型轉(zhuǎn)換為布爾類型,而不是使用!!,以節(jié)省代碼空間。

function isFalsy(obj) {return !!!obj;}

上面這段代碼是 jQuery 中用來判斷對象是否為假值的方法。

總結(jié)一下,!!!就是將變量進(jìn)行兩次取反,最終返回的是布爾類型,而在 jQuery 中,它經(jīng)常被用來判斷一個對象是否為假值。

下一篇jquery 900ms