将对象从node.js发送到ejs,而不是[object Object]

时间:2013-11-05 15:52:25

标签: javascript node.js express ejs

如果您使用node.js和ejs并将JavaScript对象渲染为ejs,则生成的HTML页面具有以下语法:

[object Object]

尽管我的目标如下:

[{"a": 3, "b": 10}, {"c":3, "d":20}, {"e":1, "f":55}]

但是,我想渲染对象本身(如果我理解正确,则为对象文字),而不是无用的[object Object]

那我怎样才能正确渲染呢? res.render("index", {result: listOfObject.valueOf()})没有用。

2 个答案:

答案 0 :(得分:2)

[object Object]是您在匿名对象上调用.toString()时获得的内容。当您与另一个字符串(例如"my object: " + {a:'b'})连接时,这是隐式完成的。

如果您想获得所需的输出,则需要使用

JSON.stringify(yourObjectHere)

很好地打印出来。

答案 1 :(得分:1)

res.render("index", { result: JSON.stringify(listOfObject) });