我有一个相当大的对象需要传递给客户端脚本的函数。我已经尝试使用JSON.stringify,但是遇到了一些性能相关的问题。在ejs中是否有可能做到这样的事情?
app.get('/load', function(req, res) {
var data = {
layout:'interview/load',
locals: {
interview: '',
data: someLargeObj
}
};
res.render('load', data);
});
在我的客户端脚本中,我会像这样将这个对象传递给一个函数
<script type="text/javascript">
load(<%- data %>); // load is a function in a client script
</script>
当我尝试这样做时,我会得到以下两种情况之一:
<script type="text/javascript">
load();
</script>
或者<script type="text/javascript">
load([Object object]);
</script>
JSON.stringify
是唯一的方法。 - Florian MargaineJSON.stringify
服务端,而不是在传递给浏览器的<script>
数据中使用客户端。 - QuentinJSON.stringify
。此外,为什么JSON.stringify
将其转换为对象,而它应该做相反的操作呢? - jedu