Javascript &引用;无法读取属性';用户名';“未定义”的定义;从JSON数据创建html表时出错
我正在尝试用JSON为一个留言板网站创建一个html表。我有一个名为“msgs”的JSON用于消息,其中包含用户名、消息和日期的字典。我试图提取要添加到表中的每个元素,但得到一个错误 最初,我将所有行分别追加到表中,但我创建了一个变量“table”,向其中添加所有元素,并在末尾追加所有内容Javascript &引用;无法读取属性';用户名';“未定义”的定义;从JSON数据创建html表时出错,javascript,json,Javascript,Json,我正在尝试用JSON为一个留言板网站创建一个html表。我有一个名为“msgs”的JSON用于消息,其中包含用户名、消息和日期的字典。我试图提取要添加到表中的每个元素,但得到一个错误 最初,我将所有行分别追加到表中,但我创建了一个变量“table”,向其中添加所有元素,并在末尾追加所有内容 msgs=[{username:"John" message:"I am John" date: "2019-09-05 18:02:53.000000"} {user
msgs=[{username:"John"
message:"I am John"
date: "2019-09-05 18:02:53.000000"}
{username:"Mary"
message:"I am Mary"
date:"2019-09-06 18:02:53.000000"}
]
function buildTable(msgs){
let table = ""
table += '<table style="width:100%" border="1">';
for (var i = 0; 1 < msgs.length; i++){
let username = msgs[i]["username"];
let message = msgs[i]["message"];
let date = msgs[i]["date"];
table += '<tr>';
table += '<td>' + username + '</td>';
table += '<td align="left">'+ message + '</td>';
table += '<td align="right">' + date + '</td>';
table += '</tr>';
}
table +='</table>';
$("#messagecontainer").append(table);
应该是John,但我收到一个错误,上面写着:
“未捕获类型错误:无法读取未定义的属性‘username’”
我尝试将msgs[I][username]登录到控制台,它正确地打印了“John”。但是,当我尝试将其添加到表中时,它就是不起作用。可能是因为for循环的
1(第一)
而不是I(变量I)
?因此,该条件始终为真,并且循环将结束可能是因为for循环具有1(编号1)
而不是i(变量i)
?因此,该条件始终为真,循环将耗尽,因为循环处于无限模式。在for循环内部,您正在检查1
,此条件将始终为真。因为msgs数组中只有两个对象,所以在第三次迭代中它会抛出
未捕获类型错误:无法读取未定义的属性“username”
这是因为你的循环是在无限模式下进行的。在for循环内部,您正在检查
1
,此条件将始终为真。因为msgs数组中只有两个对象,所以在第三次迭代中它会抛出
未捕获类型错误:无法读取未定义的属性“username”
将1
msgs
无效。缺少大量逗号:将1msgs
无效。缺少很多逗号:
msgs[i][username]
= msgs[0][username]
= "John"