我在 Jade 中遍历 JSON 对象数组有什么问题?
What's wrong with my iteration through an array of JSON objects in Jade?
我有类似的对象...
{
a: {
aa: 1,
ab: 2
},
b: {
ba: 4,
bb: 3
}
}
...但它们在一个数组中。
在 Jade 中,我有一个 table 显示如下...
table
tr
td aa
td= data[0].a.aa
tr
td ab
td= data[0].a.ab
tr
td ba
td= data[0].b.ba
tr
td bb
td= data[0].b.bb
显示正确。即使我用 1 替换 0。所以两个对象都是可见的。
现在,我想通过循环显示 data
中多个对象的 table。我尝试了以下但没有用。我究竟做错了什么?看起来很简单。
for i in data.length
table
tr
td aa
td= data[i].a.aa
tr
td ab
td= data[i].a.ab
tr
td ba
td= data[i].b.ba
tr
td bb
td= data[i].b.bb
没有 table 出现。页面显示为空白。
以防万一,我正在使用 Express.js 生成对象数组。该页面只是呈现的视图。不涉及 ajax 或其他变量。
正如评论中所讨论的,循环应该是:
for i in data
table
...
您试图在 data.length
上循环,它是单个值(数组的长度)。
我有类似的对象...
{
a: {
aa: 1,
ab: 2
},
b: {
ba: 4,
bb: 3
}
}
...但它们在一个数组中。
在 Jade 中,我有一个 table 显示如下...
table
tr
td aa
td= data[0].a.aa
tr
td ab
td= data[0].a.ab
tr
td ba
td= data[0].b.ba
tr
td bb
td= data[0].b.bb
显示正确。即使我用 1 替换 0。所以两个对象都是可见的。
现在,我想通过循环显示 data
中多个对象的 table。我尝试了以下但没有用。我究竟做错了什么?看起来很简单。
for i in data.length
table
tr
td aa
td= data[i].a.aa
tr
td ab
td= data[i].a.ab
tr
td ba
td= data[i].b.ba
tr
td bb
td= data[i].b.bb
没有 table 出现。页面显示为空白。
以防万一,我正在使用 Express.js 生成对象数组。该页面只是呈现的视图。不涉及 ajax 或其他变量。
正如评论中所讨论的,循环应该是:
for i in data
table
...
您试图在 data.length
上循环,它是单个值(数组的长度)。