谁能告诉我为什么这是不起作用的
var person = {fname:"John", lname:"Doe", age:25};
var text = "";
var x;
for (x in person) {
text += person.x + " ";
}
document.getElementById("demo").innerHTML = text;
如果变量是
var person = {fname:"John", lname:"Doe", age:25, x:"male"};
和var x;
都是不需要的。
那么它将正常工作吗?
答案 0 :(得分:2)
您需要使用括号符号中的键。您可以使用property accessor的两个版本:
object['key'] // bracket notation
object.key // dot notation
只有第一个版本可以使用变量。变量的值必须是所需的键。
var person = { fname: "John", lname: "Doe", age: 25 },
text = "",
x;
for (x in person) {
text += person[x] + " ";
}
document.getElementById("demo").innerHTML = text;
<div id="demo"></div>