清除Javascript语法
当我运行这个时,它会打印未定义的内容。我不明白为什么它不打印值。我打字的时候清除Javascript语法,javascript,syntax,Javascript,Syntax,当我运行这个时,它会打印未定义的内容。我不明白为什么它不打印值。我打字的时候 var me = new Object(); me.name = "Adithya"; me.age = 15; for(var prop in me){ console.log(me.prop); } 它打印 console.log(prop); 这不意味着道具对我来说是一个领域吗?因此,我不应该使用.prop(当prop是name时)来像我一样工作吗?您要查找的语法是me[prop] me.pro
var me = new Object();
me.name = "Adithya";
me.age = 15;
for(var prop in me){
console.log(me.prop);
}
它打印
console.log(prop);
这不意味着道具对我来说是一个领域吗?因此,我不应该使用.prop(当prop是name时)来像我一样工作吗?您要查找的语法是
me[prop]代码>
me.prop
等同于me['prop']
这不是您想要的。
请注意,您以前在me.age
和me.nameprop
是一个包含字符串的变量,因此需要像这样使用me[prop]
:
name
age
当属性名位于变量中时,需要使用[prop]
语法,在您的情况下,该语法将是me[prop]
仅供参考,me.prop
尝试访问名为“prop”
的属性。它不使用变量prop
的内容。只有当属性名是代码解析时已知的常量,并且属性中的字符在Javascript点语法中合法使用时,才能使用点语法访问属性。如果它位于变量中(或者如果它包含
或空格之类的字符),则必须使用括号语法来获取变量的内容并使用该属性名。。
for(var prop in me){
console.log(me[prop]);
}