問題

一連のデータをループし、食品の名前を1つの配列に追加する作業。現在以下の設定:

注: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' ]
 

私はそれを1つの配列にしたいだけです。何かアドバイス?

  ベストアンサー

forループの外でlogを使用しようとします。

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

  同じタグがついた質問を見る

arraysloopsejs