Uncaught SyntaxError:服务器变量的意外标识符

时间:2016-05-17 18:22:08

标签: javascript jquery

以下代码行产生标题错误:

  var tweets = <%= tweets %>;

在Chrome控制台中,它显示如下:

var tweets = [object Object];

为什么会抛出此错误?从类似的问题来看,它似乎是一个语法问题,但我不确定如何改变上述语法?

我最初在发送之前对该对象进行了字符串化,但这会出现意外字符的错误。

1 个答案:

答案 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中使用来创建对象。