【问题标题】:Looping through Array - Print only once?遍历数组 - 只打印一次?
【发布时间】:2019-06-30 09:51:43
【问题描述】:

循环遍历一组数据并将食物名称添加到一个数组中。当前设置如下:

注意:allDBfoods 是在数据库中播种的食物数据的集合。

<% var breakfastFoods = []  %>
<% for (var food of allDBFoods) { %>
    <% if (food.breakfast == true ){ %>

        <% breakfastFoods.push(food.name) %>
        <% console.log(breakfastFoods)%>
    <% } %>
<% } %>

这有效但返回

[ 'Eggs' ]
[ 'Eggs', 'Bacon' ]
[ 'Eggs', 'Bacon', 'poptarts' ]

我只希望它制作一个数组。有什么建议吗?

【问题讨论】:

  • 一点代码缩进会引导您理解问题。

标签: arrays loops ejs


【解决方案1】:

尝试在for 循环之外使用log

<% var breakfastFoods = []  %>
<% for (var food of allDBFoods) { %>
    <% if (food.breakfast == true ){ %>    
        <% breakfastFoods.push(food.name) %>
    <% } %>
<% } %>
<% console.log(breakfastFoods)%>

【讨论】:

  • 好吧。不知道为什么我没有让它工作哈哈。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-03
  • 1970-01-01
  • 1970-01-01
  • 2017-11-23
  • 1970-01-01
相关资源
最近更新 更多