Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在nodejs中迭代复杂的json字符串_Javascript_Arrays_Json_Node.js_Express - Fatal编程技术网

Javascript 如何在nodejs中迭代复杂的json字符串

Javascript 如何在nodejs中迭代复杂的json字符串,javascript,arrays,json,node.js,express,Javascript,Arrays,Json,Node.js,Express,我们有这个json数据 { "class 1": [ {"student_name":"ABC"}, {"student_name":"BDC"} ], "class 2": [ {"student_name":"BBB"}, {"student_name":"ADS"} ] } 在我们的express js应用程序中,我们使用ejs作为视图,我们希望以html格式输出如下内容 一级 ABC

我们有这个json数据

{
 "class 1":
    [
        {"student_name":"ABC"},
        {"student_name":"BDC"}
    ],
 "class 2":
    [
        {"student_name":"BBB"},
        {"student_name":"ADS"}
    ]
}
在我们的express js应用程序中,我们使用ejs作为视图,我们希望以html格式输出如下内容 一级

  • ABC
  • BDC
第2类

  • BBB
  • 广告
使用foreach($array as$key=>$value)在php中实现这一点很简单,但是如何使用javascript在json字符串中实现这一点呢

现在只有这个我能想到

for(var i = 0;i<students.length;i++)
{
    %><%= students[i]['student_name'] %><%
}

for(var i=0;i因为您处理的是一个对象,所以您可以简单地对它进行迭代,就像评论者链接/说的那样

如下所示对循环执行
,为递增变量提供当前对象值,因此样式/标记变得简单,然后嵌套数组以类似的方式工作

<% var data = {
    "class 1": [
            {"student_name":"John"},
            {"student_name":"Harry"}
    ],
    "class 2": [
            {"student_name":"Kelly"},
            {"student_name":"Melanie"}
    ]
}
%>
<% for (x in data) {%>
    <h3><%- x %></h3>
    <ul>
    <% for (n in data[x]) {%>
        <li><%- data[x][n].student_name %></li>
    <% } %>
    </ul>
<% } %>


我强烈建议您自己花点时间进行研究,他们在头版上有类似的例子。除非您指定您尝试的HTML或EJS语法,否则问题看起来“太宽泛了”。@prasun添加了代码,请检查