javascript - ejs获取嵌套对象

标签 javascript json node.js express ejs

我正在尝试将以下 json 传递到 ejs 模板文件中。

    "image": {
       "0": {
           "url": "http://cdn.photos.ample_mls.com/az/20151113223546806109000000.jpg",
           "caption": "17596-20"
        },
    "totalCount": "39"
},

这是 ejs 模板。我试图列出字典中图像的所有网址。每个图像都是一个嵌套字典。我如何循环遍历它们并列出 url?

<ul>
 <% for(var i=0;i<image.length;i++){%>
   <%= image[i].url %>
 <%}%>
</ul>

最佳答案

首先,您需要使用 JSON.parse() 解析 json。然后在模板中您可以使用 for-in 循环,如下所示

<% for (let key in image) { %>
   <% if (image.hasOwnProperty(key)) { %>
      <%= image[key].url %>
   <%}%>
<%}%>

关于javascript - ejs获取嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49121377/

相关文章:

node.js - 来自 Facebook Messenger/Bot API 的重复 POST 请求

javascript - 无法破解通过 css 插件使两个输入元素在线显示?

javascript - 使用 Mapzen 以字符串或 JSON 形式返回逐向数据

json - 将 Json 对象参数发送到 .net Core 中的 Web Api Controller

javascript - 无法将删除按钮添加到表格中的所有行

mysql - 如何在 sequelize 的同一查询中使用 AND 和 OR 运算符?

javascript - Node.js 二进制服务器 : Send a message to the client on stream end?

javascript - 如何在 forEach 循环中进行同步调用 Angular 6

javascript - 按钮调用 javascript 函数错误

javascript - 在 Jquery 中一行一行地显示?