可能的重复:
浏览器原生 JSON 支持 (window.JSON) https://stackoverflow.com/questions/891299/browser-native-json-support-window-json
具体来说,就是JSON.parse(...)
IE7+、Firefox 2+、Chrome、Safari 支持吗?
See: JavaScript 中的 JSON http://www.json.org/js.html
2013年(及以后)的答案
所有主流浏览器都支持 JSON.parse 吗?
差不多,是的(source http://caniuse.com/#search=JSON.parse)。即使 IE8 也有它(前提是您没有处于 IE7 模拟模式)。如果您需要支持 IE7 及更早版本,请继续阅读。
2011年的原始答案
不,较旧的浏览器(例如 IE7)大多没有它。 (更多的:http://caniuse.com/#search=JSON.parse http://caniuse.com/#search=JSON.parse)
然而,您只需要一个小脚本即可。 JSON 的发明者 Douglas Crockford 至少有三种供你选择他的 Github 页面 https://github.com/douglascrockford/JSON-js/:
-
json2.js
: 两者都提供JSON.parse
and JSON.stringify
。解析使用一些正则表达式来防御脚本注入攻击,然后将结果传递给eval
。这通常被认为不是一个好主意。
-
json_parse.js
:不使用递归下降解析器eval
.
-
json_parse_state.js
:不使用的状态机解析器eval
.
使用适合你的东西。 :-)
几乎任何主要的图书馆(例如jQuery http://jquery.com, 原型 http://prototypejs.org, YUI http://developer.yahoo.com/yui/, Closure http://code.google.com/closure/library, or 其他几个中的任何一个 http://en.wikipedia.org/wiki/List_of_JavaScript_libraries)还将提供 JSON 解析,尽管在某些情况下它很可能只是一个薄薄的饰面eval
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)