var person = {
name: "jxq",
mail: "jxqlovejava@gmail.com"
}
for(var key in person) {
console.log(key + ": " + person.key);
// console.log(key + ": " + person[key]);
}
上面能否输出如下:
name: jxq
mail: jxqlovejava@gmail.com
答案是不能!
而如果把console.log行换成注释的那一行后就能按照预期输出了。
不用我解释,再给两行代码就一目了然了:
console.log(person.name);
console.log(person["name"]);
不过推荐通过属性名访问对象属性,因为数组索引方式访问效率更低。