js定义对象时属性名是否加引号问题

1.在JavaScript中,加引号与不加引号都是一样用,都是有效的。

var person1 = {
    name:'pca',
    age:12
};
alert(person1.name); //pca
alert(person1['name']);//pca

var person2 = {
    'name':'pca',
    age:12
};
alert(person2.name); //pca
alert(person2['name']);//pca

2.但是当使用非合法命名规则的时候,就必须要使用引号,

   还需要注意的是,如果加上引号,使用  “.属性名”: 方式读取属性时仍然会出错,需要使用  “[‘属性名']”: 方式读取属性

var person = {
    'first-name':'pca',
    age:12
}

console.log(person.first-name);//NaN
console.log(person['first-name']);//pca

猜你喜欢

转载自blog.csdn.net/weixin_42787326/article/details/82725078
今日推荐