我正在尝试访问此对象的属性:
var obj = {hello: 1, world: 2};
Run Code Online (Sandbox Code Playgroud)
这让我回复未定义:
function foo(a) {
for(property in a) {
console.log(a.property);
}
return "foo";
}
foo(obj);
Run Code Online (Sandbox Code Playgroud)
这给出了预期的结果:
function bar(a) {
for(property in a) {
console.log(a[property]);
}
return "bar";
}
bar(obj);
Run Code Online (Sandbox Code Playgroud)
为什么对foo的调用不起作用,而对bar的调用允许我访问属性?
因为a.property是一样的a['property'],不是a[property].所以你实际上试图访问属性"属性".
您的第二个代码段使用该变量property,前者使用该属性property.
| 归档时间: |
|
| 查看次数: |
47 次 |
| 最近记录: |