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

首頁 > 網(wǎng)站 > WEB開發(fā) > 正文

JS聲明對象時(shí)屬性名加引號與不加引號的區(qū)別

2024-04-27 15:12:41
字體:
供稿:網(wǎng)友

原文地址:http://blog.csdn.net/penwan/article/details/43452463#comments

      這個(gè)問題很好有人關(guān)注,但我每一次在聲明一個(gè)對象屬性的時(shí)候都要想想要不要給屬性加引號?加引號與不加引號有什么區(qū)別?

其實(shí)在javaScript中,加引號與不加引號都是一樣用,都是有效的。

如:

[Javascript] view plain copyvar obj = {      name    : '琼臺博客',      'age'   : 18,  };     document.write( 'name : ' + obj['name'] + '<br />' );  document.write( 'age : ' + obj.age + '<br />' );  

執(zhí)行:

name : 琼臺博客age : 18

哪在什么時(shí)候有區(qū)別呢?在你使用一些非合法命名規(guī)則的時(shí)候,就顯的有必要了

比如:

[javascript] view plain copyvar obj = {      888name : '琼臺博客'  };     document.write( '888name : ' + obj.888name + '<br />' );  

這時(shí)候會報(bào)錯(cuò)誤:

(原文)但你給加上引號,就沒事了

如果加上引號,使用  “.屬性名”: 方式讀取屬性時(shí)仍然會出錯(cuò):

[javascript] view plain copyvar obj = {      '888name' : '琼臺博客'  };     document.write( '888name : ' + obj.888name + '<br />' );  

執(zhí)行,發(fā)現(xiàn)報(bào)錯(cuò):

如果加上引號,使用  “[‘屬性名']”: 方式讀取屬性時(shí)不會出錯(cuò):

[javascript] view plain copyvar obj = {      '888name': '琼臺博客'  };     document.write('888name : ' + obj['888name'] +'<br />' );  

執(zhí)行:

888name : 琼臺博客

甚至還可以更特殊一點(diǎn),如:

[javascript] view plain copyvar obj = {      '': '這個(gè)屬性名是空的',      ' ': '這個(gè)屬性名是一個(gè)空格'  };     document.write(  obj[''] +'<br />' );  document.write(  obj[' '] +'<br />' );  

執(zhí)行:

這個(gè)屬性名是空的這個(gè)屬性名是一個(gè)空格

我們引用對象成員的時(shí)候,由于屬性名不是合法命名規(guī)則,因此也需要使用中括號的方式來訪問,也建議大家以后采取中括號的方式讀取對象屬性值,以免有意外錯(cuò)誤

雖然實(shí)際我們寫程序一般都遵守程序公約,不會去制造一些另類,但特殊性情況下,這些能力也可以彌補(bǔ)一些變態(tài)需求。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 蓬莱市| 吴川市| 湖州市| 康马县| 民乐县| 蕉岭县| 华宁县| 石台县| 阿巴嘎旗| 福安市| 温宿县| 新绛县| 封丘县| 来宾市| 安西县| 米泉市| 宜川县| 锦屏县| 临桂县| 巢湖市| 土默特右旗| 贵港市| 峨眉山市| 贵定县| 石泉县| 吉木乃县| 敦化市| 南和县| 大安市| 澜沧| 淮安市| 博罗县| 佳木斯市| 新巴尔虎左旗| 平舆县| 唐山市| 潜山县| 白银市| 澄城县| 偏关县| 瓦房店市|