JSON

多余的逗号

字号+ 作者:H5之家 来源:H5之家 2017-06-01 13:07 我要评论( )

JSON在JSON格式中,逗号是多个属性键值对间的分隔符,例如:var json = { id: 1, name: \

JSON

在JSON格式中,逗号是多个属性键值对间的分隔符,例如:

var json = { id: 1, name: 'heero' };

但在编程的时候,很容易会画蛇添足,在最后一对键值对后也加上了逗号:

var json = { id: 1, name: 'heero', };

在这种情况下,IE6、7会报错,但IE8以及其他浏览器则没有问题。

数组

在数组中,逗号是元素间的分隔符,例如:

var arr = [1, 2, 3];

同样地,我们也有可能不小心在最后一个元素后加了逗号:

var arr = [1, 2, 3,];

凭直觉来说,这应该是错误的语法。但实际上,所有浏览器都对这种情况实现了兼容,包括IE6。考虑这样一段示例代码:

var arr = [1, 2, 3,];
for (var i = 0; i < arr.length; i++) { alert(arr[i]); }

在IE以外的浏览器上,均依次输出1、2、3;但在IE浏览器上,却是依次输出1、2、3、undefined。明显地,IE在那个多余的逗号后加了一个undefined元素。

再考虑另一种情况,多余的逗号不在末尾,而是在中间:

var arr = [1, 2,, 3,];
for (var i = 0; i < arr.length; i++) { alert(arr[i]); }

所有浏览器均输出1、2、undefined、3,可见处理方式是一样的,就是在多余的逗号前插入一个undefined元素。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Linux下Json格式化神器jq

    Linux下Json格式化神器jq

    2017-06-01 12:06

  • JSON级联表单实例

    JSON级联表单实例

    2017-06-01 12:05

  • [前端]如何使用 Python 处理 JSON 数据(译) 技术学习小组

    [前端]如何使用 Python 处理 JSON 数据(译) 技术学习小组

    2017-05-31 15:00

  • Unity的Json解析二–写Json文件

    Unity的Json解析二–写Json文件

    2017-05-31 14:01

网友点评
!