浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号


Posted in Javascript onMarch 22, 2016

1 C,C++,Java,PHP都能容忍末尾的逗号

C,C++,Java中对数组赋值时,最后一个元素末尾的逗号可有可无。下面两行代码对这些语言来说是等效的。

int a[] = {1,2,3}; /* 正确 */
int a[] = {1,2,3,}; /* 正确 */

PHP这一点也继承了C的特点,下面的两行代码等效。

$a = array(1,2,3); /* 正确 */
$a = array(1,2,3,); /* 正确 */

2 JavaScript视末尾逗号为语法错误!

然而到了JavaScript,情况大不相同了,最后一个元素末尾一定不能有逗号,否则就是语法错误。

var a = new Array(1,2,3); //正确
var a = new Array(1,2,3,); //报错

对于对象,同样不能有末尾的逗号。

var o = { name:'赵', age:12 }; // 正确
var o = { name:'赵', age:12,}; // 报错

尽管有些浏览器在检测到这种错误后,最大容忍地去执行,但这不是统一的行为。IE系列浏览器统统不能容忍这种错误。

3 JSON同样不能容忍末尾的逗号

{"name":"zhao", "age":12} // 正确的JSON格式
{"name":"zhao", "age":12,} // 错误的JSON格式

需要注意的是,JSON是一种通用数据格式,与具体编程语言无关。各种语言在解码JSON时,也会采用不同的容忍程度。PHP的json_decode()就不能容忍末尾的逗号。

json_decode({"name":"zhao", "age":12,}); // 解析会发生错误

有关C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号的知识小编就给大家介绍这么多,希望对大家有所帮助,欲了解更多信息请登录三水点靠木官网了解详情!

Javascript 相关文章推荐
jQuery弹出层插件简化版代码下载
Oct 16 Javascript
jQuery学习7 操作JavaScript对象和集合的函数
Feb 07 Javascript
setTimeout和setInterval的区别你真的了解吗?
Mar 31 Javascript
js遍历子节点子元素附属性及方法
Aug 19 Javascript
JavaScript去除数组里重复值的方法
Jul 13 Javascript
js 右侧浮动层效果实现代码(跟随滚动)
Nov 22 Javascript
jquery根据一个值来选中select下的option实例代码
Aug 29 Javascript
js HTML5 canvas绘制图片的方法
Sep 08 Javascript
js注册时输入合法性验证方法
Oct 21 Javascript
详解a标签添加onclick事件的几种方式
Mar 29 Javascript
vuex根据不同的用户权限展示不同的路由列表功能
Sep 20 Javascript
Jquery异步上传文件代码实例
Nov 13 jQuery
使用struts2+Ajax+jquery验证用户名是否已被注册
Mar 22 #Javascript
使用getBoundingClientRect方法实现简洁的sticky组件的方法
Mar 22 #Javascript
Node.js文件操作方法汇总
Mar 22 #Javascript
浅谈Sticky组件的改进实现
Mar 22 #Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
Mar 22 #Javascript
关于JS中match() 和 exec() 返回值和属性的测试
Mar 21 #Javascript
快速掌握Node.js中setTimeout和setInterval的使用方法
Mar 21 #Javascript
You might like
javascript中onmouse事件在div中失效问题的解决方法
2012/01/09 Javascript
js 实现菜单上下显示附效果图
2013/11/21 Javascript
ie下$.getJSON出现问题的解决方法
2014/02/12 Javascript
js使用心得分享
2015/01/13 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
2015/12/20 Javascript
jQuery增加和删除表格项目及实现表格项目排序的方法
2016/05/30 Javascript
微信小程序 获取二维码实例详解
2017/06/23 Javascript
js实现方块上下左右移动效果
2017/08/17 Javascript
angularjs实现时间轴效果的示例代码
2017/11/29 Javascript
javascript trie前缀树的示例
2018/01/29 Javascript
从零开始实现Vue简单的Toast插件
2018/12/03 Javascript
vue选项卡切换登录方式小案例
2019/09/27 Javascript
js数据类型转换与流程控制操作实例分析
2019/12/18 Javascript
跟老齐学Python之传说中的函数编写条规
2014/10/11 Python
Python中装饰器兼容加括号和不加括号的写法详解
2017/07/05 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
Python----数据预处理代码实例
2019/03/20 Python
对Python 中矩阵或者数组相减的法则详解
2019/08/26 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
2019/09/07 Python
python代码实现猜拳小游戏
2020/11/30 Python
HTML5边玩边学(3)像素和颜色
2010/09/21 HTML / CSS
JD Sports德国官网:英国领先的运动鞋和运动服饰零售商
2018/02/26 全球购物
Notino瑞典:购买香水和美容产品
2019/07/26 全球购物
什么是继承
2013/12/07 面试题
服装厂厂长岗位职责
2013/12/27 职场文书
便利店促销方案
2014/02/20 职场文书
分层教学实施方案
2014/03/19 职场文书
毕业证代领委托书
2014/09/26 职场文书
2014年幼儿园教学工作总结
2014/12/04 职场文书
领导欢迎词范文
2015/01/26 职场文书
2015教师节师德演讲稿
2015/03/19 职场文书
快消品行业营销模式与盈利模式分享
2019/09/27 职场文书
解析MySQL binlog
2021/06/11 MySQL
angular异步验证器防抖实例详解
2022/03/31 Javascript
《王国之心》迎来了发售的20周年, 野村哲发布贺图
2022/04/11 其他游戏
Python PIL按比例裁剪图片
2022/05/11 Python