javascript typeof id==='string'?document.getElementById(id):id解釋 原創(chuàng)
一般來說想要理解這段代碼,需要掌握如下兩個函數(shù)
看完了上面的文章再看下面的就比較好理解了
一般來說常用的函數(shù)代碼
function $(id){ return typeof id==='string'?document.getElementById(id):id;}
var GetBy = function (id) {
return "string" == typeof id ? document.getElementById(id) : id;
};
功能都是一樣的。
這個函數(shù)的作用就是之后用到id選擇器可以簡寫,至于判斷的意義就是傳入的參數(shù)為字符串就返回document.getElementById(id),其他的就返回參數(shù)本身,這個只是一個獲取頁面dom元素的一個簡陋版本的函數(shù),還不夠完善。
1、這是一段JavaScript代碼
$就是一個標(biāo)示符。 也可以用getID等,如果你的頁面中使用了jquery不建議使用$,因為jquery默認使用的就是$
?:是運算符
return "string" == typeof id ? document.getElementById(id) : id;
也可以寫成是
if("string" == typeof id )
return document.getElementById(id);
else
return id;
有人感覺上面的代碼,為什么不用{}括起來,因為代碼比較短只有一行是不需要{}
如下所示
if("string" == typeof id ) {
return document.getElementById(id);
}
else {
return id;
}
具體的可以參考這篇文章:http://www.dhdzp.com/article/50197.htm
2、表達式1?表達式2:表達式3
這是一個式子;他的運算過程是:先計算表達式1,如果為true,這個式子就取表達式2的運算結(jié)果,否則整個式子取值就是表達式3的運算結(jié)果,不懂的朋友可以參考這篇文章:http://www.dhdzp.com/article/64237.htm
在你這個例子中 表達式1是 "string" == typeof id,功能是判斷id的數(shù)據(jù)類型是否為string ,==就是判斷是否相等的運算符啊
表達式2是 document.getElementById(id) 獲取ID為 參數(shù)id的值的html元素
表達式3 就是 id這個變量(一般來說這個變量多為object),如果是對象就不用document.getElementById了,直接就可以使用了。
腳本之家原創(chuàng)整理,轉(zhuǎn)載請注明出處
- js中document.getElementById(id)的具體用法
- 原生js操作checkbox用document.getElementById實現(xiàn)
- js querySelector和getElementById通過id獲取元素的區(qū)別
- getElementByIdx_x js自定義getElementById函數(shù)
- js中document.getElementByid、document.all和document.layers區(qū)分介紹
- JavaScript中也使用$美元符號來代替document.getElementById
- javascript代碼在ie8里報錯 document.getElementById(...) 為空或不是對象的解決方法
- javascript getElementById 使用方法及用法
- js中的getElementById的使用方法
相關(guān)文章
JavaScript Try...Catch 聲明的 使用方法
JavaScript Try...Catch 聲明的 使用方法...2007-04-04
輕松掌握JavaScript中的Math object數(shù)學(xué)對象
Math對象或者說是類型旗下?lián)碛泻芏嗥綍r常用的數(shù)學(xué)函數(shù),雖然并不像Date和String那樣擁有類似于類和方法那樣的使用方式,不過并不妨礙您通過本文來輕松掌握JavaScript中的Math object數(shù)學(xué)對象^^2016-05-05

