0

我使用backbone.js,此代码适用于除Internet Explorer 之外的所有现代浏览器。

var posts = postList.map(function(model){ return model.toJSON(); });

toJSON() 方法有问题,我该怎么办?

编辑:

var posts = postList.map(function(model){ return model });

没有 toJSON(),仍然无法正常工作,也许 .map 方法是有罪的?

4

3 回答 3

2

我找到了解决方案:

var posts = _.map(postsList, function(model) { return model; });
于 2012-08-07T08:57:00.297 回答
1

toJSON方法是在 JavaScript 1.8.5 中引入的。

对于没有 JavaScript 1.8.5 的浏览器,您可以使用 Douglas Crockford 的 polyfill 脚本。

https://github.com/douglascrockford/JSON-js

于 2012-08-07T08:25:44.070 回答
0

对我来说,在 ie8 上,答案原来是 _.map@1.7.0 正在迭代对象中的所有属性(是postslist哈希?),包括继承的 Object.prototype.toString 方法。这导致发送到服务器的帖子如下所示:

{ a:1,b:2, /* ... */ toString:'function(){ [native code] }'}

带有一些无关的换行符回车符。添加其中,导致服务器阻塞。

于 2015-02-21T15:11:58.280 回答