以下代码行产生标题错误:
var tweets = <%= tweets %>;
在Chrome控制台中,它显示如下:
var tweets = [object Object];
为什么会抛出此错误?从类似的问题来看,它似乎是一个语法问题,但我不确定如何改变上述语法?
我最初在发送之前对该对象进行了字符串化,但这会出现意外字符的错误。
答案 0 :(得分:0)
将对象转换为字符串时会得到[object Object]
,这就是您的模板系统正在发生的事情。
示例:
var obj = {
stuff: 'things'
};
document.write(obj);
您可以通过打印该对象的JSON表示来创建可比较的对象:
var tweets = <%- JSON.stringify(tweets) %>;
// ^-- Change to - instead of = to avoid escaping
这是有效的,因为JSON是JavaScript的子集,因此可以直接在JavaScript中使用来创建对象。