obj[age]和obj['age']有什么区别?

296 阅读1分钟

age:变量名,代表的是它存储的值。 ‘age’:常量,字符串的具体值。

var age = 'name';
var obj ={
    name='zhufeng',
    age:8
};
console.log(obj.age); //=> 8
console.log(obj['age']);// =>8
console.log(obj[age]); //=>obj[age变量] =>obj['name'] =>获取name属性名的属性值 =>"zhufeng"

obj[age]操作的是对象中的属性,并不是操作的变量,所以是操作的变量所存储的值,也就相当于obj[‘name’],而obj[‘age’]就是操作的是obj对象中age属性,所以值就是age本身。