我正在使用Jade

- if (userId !== null)
  != "<script type='text/javascript'>"
  != "userDetail.userId = "+userId.toString()+";"
  - if (friends && friends.length > 0)
    != "userDetail.friends = "+friends+";"
  != "</script>"


在Javascript中,userDetail.js,

var userDetail = {};

userDetail.userId = null;
userDetail.friends = [];


当我运行它时,我得到-Uncaught SyntaxError: Unexpected token ILLEGAL

我可以在JS中引用userDetail.userId,但userDetail.friends显示为null。
有什么线索吗?

friends是对象{id,name,_id}的数组

最佳答案

您需要使用JSON.stringify(friends),而不要使用默认的friends.toString()

node
> [{id: 42, name: "ray"}].toString()
'[object Object]'
> JSON.stringify([{id: 42, name: "ray"}])
'[{"id":42,"name":"ray"}]'

关于node.js - 将本地数组从Express传递到Javascript,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9147561/

10-15 09:40