国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 深州市| 大埔县| 博兴县| 远安县| 洪泽县| 上饶市| 宁陕县| 九龙城区| 桃江县| 海城市| 六枝特区| 宁陕县| 黄大仙区| 青州市| 华阴市| 台中县| 木兰县| 内乡县| 高密市| 朔州市| 三都| 时尚| 桂平市| 永新县| 迁安市| 夹江县| 肥东县| 泸定县| 城固县| 西丰县| 桃源县| 郧西县| 雷波县| 九寨沟县| 和田县| 庆城县| 新干县| 通河县| 合川市| 维西| 顺平县|