IE8 的 JSON 解析 Bug
作者:手气不错 发布时间:May 21, 2009 分类:JavaScript
使用 IE8 时发现其原生的 JSON 解析器存在 Bug,让我们先用 IE8 打开 DEMO 页面体验下。
http://lab.gracecode.com/bug/ie8-json-stringify.html
主要的问题就是 IE8 的 JSON 组件对空的表单输入控件(input、textarea)的值检测存在类型检测错误,它会认为空的表单值为 NULL,进而造成 JSON 解析错误。
IE8 会将 input_value 为空(没有任何输入)的情况下,解析成
{"value":"null"}而实际的预期应该是
{"value":""}所以如果你不幸要针对 IE8 Coding(这是不可避免的)而且胆子大想尝试其原生的 JSON 解析组件时,最好先保证类型是预期的。例如上述的 Bug,在修复之前只能使用
JSON.stringify({value: input_value + ''});这样的方式。
再次赞叹 IE 系列给咱前端创造的那么多的就业机会。
-- Update --
找了下微软官方,发现这个 Bug 早有人提交,查看详细。





已有 12 条回复
距离前端开发又远了一步
在ietester里的json解析也有很多奇妙的现象
我想问你个程序设计问题 :
一个x*y的数 如何生成任意排列的x行y列数
比如9 -》 3 8 6
1 5 9
4 2 7
我是菜鸟刚学了点HTML,但是我觉得必须尽快弄懂上述问题,能否帮我写写看,将非常感谢。
上面数字是 方方正正的 对齐的
3 8 6
1 5 9
4 2 7
——>推广到X*Y
我今天刚刚学点计算机类的,明天打算继续学习其他的,比如Java.所以你写点code,我应该也看得懂,大侠。
老兄啊,帮忙打听一下 Windows XP SP3 + IE8 在导入支付宝数字证书的时候出现的BUG,什么时候能搞定啊。
@dozy 根据你的要求我用 PHP 写了份示例代码,你可以看下 http://snipt.org/ZW
学习了。。。
暂时还不会去使用ie8
~
[...]移动版本的 Apache + PHP —— 灰常灰常好用,灰常灰常移动,见明城的说明[...]
[...]target=_blank>IE6方程式[...]
[...]转自:明城BLOG,感谢明城的发现与共享![...]
这不是bug,是ECMA v5的规定