国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

javascript typeof id==='string'?document.getElementById(id):id解釋 原創(chuàng)

2019-11-20 08:36:26
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

一般來(lái)說(shuō)想要理解這段代碼,需要掌握如下兩個(gè)函數(shù)

一個(gè)是 typeof 一個(gè)就是三元運(yùn)算符

看完了上面的文章再看下面的就比較好理解了

一般來(lái)說(shuō)常用的函數(shù)代碼

function $(id){ return typeof id==='string'?document.getElementById(id):id;}
var GetBy = function (id) {      return "string" == typeof id ? document.getElementById(id) : id;    };

功能都是一樣的。

這個(gè)函數(shù)的作用就是之后用到id選擇器可以簡(jiǎn)寫,至于判斷的意義就是傳入的參數(shù)為字符串就返回document.getElementById(id),其他的就返回參數(shù)本身,這個(gè)只是一個(gè)獲取頁(yè)面dom元素的一個(gè)簡(jiǎn)陋版本的函數(shù),還不夠完善。

1、這是一段JavaScript代碼
$就是一個(gè)標(biāo)示符。 也可以用getID等,如果你的頁(yè)面中使用了jquery不建議使用$,因?yàn)閖query默認(rèn)使用的就是$
?:是運(yùn)算符
return "string" == typeof id ? document.getElementById(id) : id;
也可以寫成是

if("string" == typeof id )  return document.getElementById(id);else  return id; 

有人感覺上面的代碼,為什么不用{}括起來(lái),因?yàn)榇a比較短只有一行是不需要{}

如下所示

if("string" == typeof id )   {  return document.getElementById(id);  }else {  return id;    }

具體的可以參考這篇文章://m.survivalescaperooms.com/article/50197.htm

2、表達(dá)式1?表達(dá)式2:表達(dá)式3

這是一個(gè)式子;他的運(yùn)算過(guò)程是:先計(jì)算表達(dá)式1,如果為true,這個(gè)式子就取表達(dá)式2的運(yùn)算結(jié)果,否則整個(gè)式子取值就是表達(dá)式3的運(yùn)算結(jié)果,不懂的朋友可以參考這篇文章://m.survivalescaperooms.com/article/64237.htm

在你這個(gè)例子中 表達(dá)式1是 "string" == typeof id,功能是判斷id的數(shù)據(jù)類型是否為string ,==就是判斷是否相等的運(yùn)算符啊
表達(dá)式2是 document.getElementById(id) 獲取ID為 參數(shù)id的值的html元素
表達(dá)式3 就是 id這個(gè)變量(一般來(lái)說(shuō)這個(gè)變量多為object),如果是對(duì)象就不用document.getElementById了,直接就可以使用了。

武林網(wǎng)原創(chuàng)整理,轉(zhuǎn)載請(qǐng)注明出處

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 德庆县| 满城县| 霍山县| 宁阳县| 小金县| 昂仁县| 马关县| 葫芦岛市| 肇源县| 平果县| 台东县| 惠州市| 台东县| 琼结县| 贺州市| 闽清县| 固镇县| 石楼县| 锦州市| 望都县| 临安市| 平安县| 那曲县| 安新县| 莲花县| 滨海县| 石棉县| 深水埗区| 阳朔县| 门源| 奉化市| 达拉特旗| 缙云县| 化德县| 汾西县| 西和县| 鹤壁市| 大港区| 原阳县| 罗定市| 铁力市|