2012-10-08 52 views

回答

1

JSON是JS的一个子集,所以从这个角度来看,这是100%的罚款。

JSON也旨在被转换成JS进行操作,并且转换回,而被送出,或存储。

所以转动对象插入JSON是的预期目的的一部分,而不是必须手工编写所有JSON。

根据特殊情况,JSON可以包含函数,没有循环引用......除了嵌套对象和数组内的字符串,数字和布尔值之外,没有其他的引用。

如果这是已经在你的数据格式,你就大功告成了。

IE6和7没有本机JSON支持。
但是,json2.js是Douglas Crockford提供的所有本机实现所基于的文件。
如果​​然后加载该文件,它将在OldIE中正常工作。

+0

是否意味着'JSON.stringify'会一直忽略所有浏览器中的对象原型? – Jayesh

+0

除非你像扩展'window.Object.prototype'这样的东西,否则你应该很好。即使那样,你仍然应该没问题,但我会考虑测试一下,如果那是你的意图。 – Norguard

+0

JSON是[*不是JS的严格子集](http://timelessrepo.com/json-isnt-a-javascript-subset)(虽然它通常“足够接近”)。 – user2864740

3

如果你只是发送数据,而不是功能,它会正常工作。但是JSON只能携带的值 - 而不是的功能。旧版浏览器(< IE8)本身没有JSON对象,因此您将不得不提供后备解决方案(像jQuery这样的框架自动实现后备)。

相关问题