从javascript数组生成html按钮

从javascript数组生成html按钮,javascript,arrays,loops,ejs,Javascript,Arrays,Loops,Ejs,我正在与逻辑作斗争,希望有人能帮助我。我循环遍历列表数组,然后遍历其中的followers数组。然后检查用户变量是否在这个数组中。问题是,当用户在数组中时,我希望生成一个UNFOLLOW按钮,当用户不在数组中时,生成一个FOLLOW按钮 现在发生的事情是,当followers数组有多个值时,循环将返回该数组,并在一个div中同时给出FOLLOW和UNFOLLOW按钮 我不确定我的逻辑是错误的还是语法错误 var user ='b'; lists = [ username: 'pat

我正在与逻辑作斗争,希望有人能帮助我。我循环遍历列表数组,然后遍历其中的followers数组。然后检查用户变量是否在这个数组中。问题是,当用户在数组中时,我希望生成一个UNFOLLOW按钮,当用户不在数组中时,生成一个FOLLOW按钮

现在发生的事情是,当followers数组有多个值时,循环将返回该数组,并在一个div中同时给出FOLLOW和UNFOLLOW按钮

我不确定我的逻辑是错误的还是语法错误

var user ='b';

lists = [
      username: 'pat',
      password: '***',
      followers: ['a','b','c']

    ];
     <% for (var i = 0; i < lists.length; i++) { %>
            <div class="col-xs-4 panel">

        <% for (var j = 0; j < lists[i].followers.length; j++) {%>

            <% if (lists[i].followers[j] == userId) { %>

              <button>Unfollow</button>



              <% } else { %>

                <button>FOLLOW</button>

              <% } %>

        <% } %>

    </div>  
     <% } %>
var user='b';
列表=[
用户名:“pat”,
密码:'***',
追随者:['a','b','c']
];
展开
跟随

根据您的评论,我认为这就是您想要的:

var user ='b';

lists = [
      username: 'pat',
      password: '***',
      followers: ['a','b','c']

    ];
     <% for (var i = 0; i < lists.length; i++) { %>
            <div class="col-xs-4 panel">

        <% for (var j = 0; j < lists[i].followers.length; j++) {%>

            <% var found = false;
               if (lists[i].followers[j] == userId) { 
            %>

              <button>Unfollow</button>



              <% found = true;
                 break;
              }
           }
           if (!found) { %>
              <button>FOLLOW</button>

        <% } %>
    </div>  
     <% } %>
var user='b';
列表=[
用户名:“pat”,
密码:'***',
追随者:['a','b','c']
];
展开
跟随

我只需要一个按钮,这取决于用户是否在阵列中。它为followers数组的每个索引生成一个按钮。我试着移动结束div,但没有达到预期效果。让我觉得我的逻辑错了。好吧,我明白你想做什么了。我会继续努力,因为它的当前形式正在崩溃,我知道我的逻辑需要更多的工作。