我使用JSFiddle将问题简化为简单的问题:http://fiddle.jshell.net/ZuV7J/
这正确解析了Firefox和Chrome中的简单JSON字符串,但在IE8,IE9和IE10中返回一个空对象(无论使用哪个JSON字符串)。我还没试过IE11。
无论我是否加载Crockford的JSON2.js库,都会发生这种情况。
答案 0 :(得分:3)
在Internet Explorer window.event
表示事件的状态,例如其中的元素 事件发生时,键盘键的状态,位置 鼠标和鼠标按钮的状态。
无法分配。
如果没有var
,您的代码event = JSON.parse('{"var":"value"}');
会尝试分配给不允许的window.event
。
更改为使用不同的变量名称或前缀事件,因此您的代码为:var event=JSON.parse('{"var":"value"}');
答案 1 :(得分:0)
简短回答:不要使用变量名称“event”而不在本地声明var :-)