Javascript 为什么渲染对象可以显示在html上,但不能显示在脚本中?

Javascript 为什么渲染对象可以显示在html上,但不能显示在脚本中?,javascript,html,node.js,Javascript,Html,Node.js,我通过这种方式将我的“posts”对象传递给HTML res.render('post', {posts : items }); 我可以使用此调用访问HTML中的对象,它将显示“John” 但是,如果我在html中使用相同的“posts”对象,但这次将其放入脚本中进行查询 <script> var data = <%=posts%>; for (var i=0, i<data.length, i++) { //My intentio

我通过这种方式将我的“posts”对象传递给HTML

res.render('post', {posts : items });
我可以使用此调用访问HTML中的对象,它将显示“John”


但是,如果我在html中使用相同的“posts”对象,但这次将其放入脚本中进行查询

<script>
    var data = <%=posts%>;
    for (var i=0, i<data.length, i++) {
      //My intention is to insert a dynamic html code based on this query   
    {
</script>

var数据=;
对于(var i=0,i而不是:

var data = <%=posts%>;
var数据=;
您可以使用:

var data = <%- JSON.stringify(posts) %>;
var数据=;

你在用EJS吗?@dan-是的,我在用EJS这应该会有帮助的-@dan-非常感谢。你让我开心!我在这方面搜索了很长时间,我想我用的关键词不对。哈,很好!:)没问题。非常感谢你的帮助。这解决了我的问题。
var data = <%- JSON.stringify(posts) %>;