結論:使用合法屬性名,使用 . 和 [] 訪問都可以; 如果屬性名是數字,則必須用“”包圍,並且用 [] 方括弧訪問。 ...
般情況下屬性名加引號和不加引號是都可以的,效果是一樣的。
var obj = { name : '你好', 'age' : 1, }; document.write( obj['name'] + '<br />' ); document.write( obj.age);
上面兩行代碼均可以正確執行。
當且僅當你的屬性名是非法怪異的名字時候,會報錯。
var obj = {
333 : '這個會報錯'
};
document.write( obj.333);
此時報錯。
var obj = { “333”: '這個也會報錯' }; document.write( obj.333);
如果屬性名是數字,則必須有雙引號,並且用[] 方括弧訪問。
var obj = { "333": '這個正確' }; console.log(obj["333"]);
結論:使用合法屬性名,使用 . 和 [] 訪問都可以;
如果屬性名是數字,則必須用“”包圍,並且用 [] 方括弧訪問。