我在使用double for循环从存储在数组中的字典中打印数据时遇到困难
var residents = [{name: "Pyrus", room: "32"},{name: "Ash Ketchum", room: "22"}];
function people() {
for (let i = 0; i < residents.length; i++) {
for (let j in residents[i]) {
document.write(j + ": " + residents[j] + "<br>");
}
}
};
people();
我正在检索的是:
name: undefined
room: undefined
name: undefined
room: undefined
我可以打印密钥,但似乎无法获取为密钥定义的值!
我究竟做错了什么?
成功的标准是使用HTML打印。
最佳答案
您已将两个循环链接在一起,因此您的函数需要访问父索引,然后访问要引用的属性。
function people() {
for (let i = 0; i < residents.length; i++) {
for (let j in residents[i]) {
document.write(j + ": " + residents[i][j] + "<br>");
}
}
};