探討js中的雙感嘆號判斷
更新時(shí)間:2013年11月11日 11:38:10 作者:
js中的雙感嘆號判斷。在網(wǎng)上查了些資料,他相當(dāng)于三元運(yùn)算符,返回boolean值
今天看qunit源代碼,發(fā)現(xiàn)一段很奇怪的代碼,雖然能領(lǐng)會他的意思,但是不明白雙感嘆號起到的作用。
function id( name ) {
return !!( typeof document !== "undefined" && document && document.getElementById ) &&
document.getElementById( name );
}
然后去網(wǎng)上查了些資料,他相當(dāng)于三元運(yùn)算符,返回boolean值。
var ret = !!document.getElementById
等價(jià)于:
var ret = document.getElementById ? true : false;
當(dāng)值是非空字符串和非零數(shù)字返回true,當(dāng)值是空字符串、0或者null返回false。
var a = " "; alert(!!a); //true
var a = "s"; alert(!!a); //true
var a = true; alert(!!a); //true
var a = 1; alert(!!a); //true
var a = -1; alert(!!a); //true
var a = -2; alert(!!a); //true
var a = 0; alert(!!a); //false
var a = ""; alert(!!a); //false
var a = false; alert(!!a); //false
var a = null; alert(!!a); //false
復(fù)制代碼 代碼如下:
function id( name ) {
return !!( typeof document !== "undefined" && document && document.getElementById ) &&
document.getElementById( name );
}
然后去網(wǎng)上查了些資料,他相當(dāng)于三元運(yùn)算符,返回boolean值。
復(fù)制代碼 代碼如下:
var ret = !!document.getElementById
等價(jià)于:
復(fù)制代碼 代碼如下:
var ret = document.getElementById ? true : false;
當(dāng)值是非空字符串和非零數(shù)字返回true,當(dāng)值是空字符串、0或者null返回false。
復(fù)制代碼 代碼如下:
var a = " "; alert(!!a); //true
var a = "s"; alert(!!a); //true
var a = true; alert(!!a); //true
var a = 1; alert(!!a); //true
var a = -1; alert(!!a); //true
var a = -2; alert(!!a); //true
var a = 0; alert(!!a); //false
var a = ""; alert(!!a); //false
var a = false; alert(!!a); //false
var a = null; alert(!!a); //false
相關(guān)文章
js寫出遮罩層登陸框和對聯(lián)廣告并自動跟隨滾動條滾動
這篇文章主要介紹了js寫出遮罩層登陸框和對聯(lián)廣告并自動跟隨滾動條滾動,需要的朋友可以參考下2014-04-04寫入cookie的JavaScript代碼庫 cookieLibrary.js
cookieLibrary.js 寫入cookie的JavaScript代碼庫,需要的朋友可以參考下。2009-10-10關(guān)于驗(yàn)證碼在IE中不刷新的快速解決方法
下面小編就為大家?guī)硪黄P(guān)于驗(yàn)證碼在IE中不刷新的快速解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-09-09List the Codec Files on a Computer
List the Codec Files on a Computer...2007-06-06JavaScript微信定位功能實(shí)現(xiàn)方法
這篇文章主要介紹了JavaScript微信定位功能實(shí)現(xiàn)方法,將定位到的經(jīng)緯度轉(zhuǎn)換為百度地圖對應(yīng)的經(jīng)緯度,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11Javascript自執(zhí)行匿名函數(shù)(function() { })()的原理淺析
匿名函數(shù)就是沒有函數(shù)名的函數(shù)。這篇文章主要介紹了Javascript自執(zhí)行匿名函數(shù)(function() { })()的原理淺析的相關(guān)資料,需要的朋友可以參考下2016-05-05