我有一个对象video
用于我的node.js应用程序的 View ,其中包含以下内容。
{ title:
[ 'Jason Fried: Why work doesn\'t happen at work',
'John Maeda: How art, technology and design inform creative leaders',
'From Storytelling to Storylistening: John Maeda (Future of StoryTelling 2014)' ],
url:
[ 'https://www.youtube.com/watch?v=5XD2kNopsUs&feature=youtu.be',
'http://www.youtube.com/watch?v=WAuDCOl9qrk&feature=youtu.be',
'http://www.youtube.com/watch?v=U8-Q70gV2Yk&feature=youtu.be' ] }
这是循环
<% for (var key in video) { %>
<li><%= video[key] %></li>
<% } %>
这给了我这个
<li>title[0] title[1] title[2]</li>
<li>url[0] url[1] url[2]</li>
如何才能使其按以下方式打印?
<li>title[0] url[0]</li>
<li>title[1] url[1]</li>
<li>title[2] url[2]</li>
最佳答案
根据对象的结构,并假设您有与视频一样多的网址,您应该执行以下操作:
<% for (var i = 0; i < video.title.length; i++) { %>
<li><%=video.title[i]%> <%=video.url[i]%></li>
<% } %>
编辑
如果你想使用当前正在尝试的循环,你应该像这样构建你的对象:
// Video will be a list of objects
var video = [];
Object.keys(data.list).forEach(function(item) {
video.push({
title : data.list[item].resolved_title,
url : data.list[item].resolved_url
)};
})
然后,您将能够像这样编写循环:
<% for (var key in video) { %>
<li><%= video[key].title %> <%=video[key].url%></li>
<% } %>
关于javascript - 循环遍历对象并成对打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33103705/