浅析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 相关文章推荐
javascript 关闭IE6、IE7
Jun 01 Javascript
JavaScript Event学习第六章 事件的访问
Feb 07 Javascript
jQuery中事件对象e的事件冒泡用法示例介绍
Apr 25 Javascript
JavaScript判断变量是对象还是数组的方法
Aug 28 Javascript
Javascript学习笔记之数组的构造函数
Nov 23 Javascript
js对象的复制继承实例
Jan 10 Javascript
jQuery Ajax 实例代码 ($.ajax、$.post、$.get)
Apr 29 Javascript
妙用Bootstrap的 popover插件实现校验表单提示功能
Aug 29 Javascript
React.js中常用的ES6写法总结(推荐)
May 09 Javascript
JavaScript中立即执行函数实例详解
Nov 04 Javascript
JS+canvas五子棋人机对战实现步骤详解
Jun 04 Javascript
js实现mp3录音通过websocket实时传送+简易波形图效果
Jun 12 Javascript
使用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
Zend Framework教程之动作的基类Zend_Controller_Action详解
2016/03/07 PHP
基于PHP实现通过照片获取ip地址
2016/04/26 PHP
php根据命令行参数生成配置文件详解
2019/03/15 PHP
php框架知识点的整理和补充
2021/03/01 PHP
window.open的页面如何刷新(父页面)上层页面
2012/12/28 Javascript
Javascript模块化编程(一)AMD规范(规范使用模块)
2013/01/17 Javascript
JS定时器实例详细分析
2013/10/11 Javascript
javascript计算用户打开网页的停留时间
2014/01/09 Javascript
NodeJS Web应用监听sock文件实例
2015/02/18 NodeJs
JavaScript中判断函数、变量是否存在
2015/06/10 Javascript
详解AngularJS中自定义过滤器
2015/12/28 Javascript
jQuery.Ajax()的data参数类型详解
2017/07/23 jQuery
详解webpack+express多页站点开发
2017/12/22 Javascript
解决vue的变量在settimeout内部效果失效的问题
2018/08/30 Javascript
如何能分清npm cnpm npx nvm
2019/01/17 Javascript
Vue实现简单计算器
2021/01/20 Vue.js
[38:42]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第二场 11.05
2020/11/05 DOTA
Python算术运算符实例详解
2017/05/31 Python
python3.4下django集成使用xadmin后台的方法
2017/08/15 Python
Python基于回溯法子集树模板解决取物搭配问题实例
2017/09/02 Python
python2.x实现人民币转大写人民币
2018/06/20 Python
python路径的写法及目录的获取方式
2019/12/26 Python
浅谈Python访问MySQL的正确姿势
2020/01/07 Python
Python退出时强制运行一段代码的实现方法
2020/04/29 Python
利用HTML5的新特点实现图片文件异步上传
2014/05/29 HTML / CSS
ALLSAINTS英国官网:伦敦新锐潮流品牌
2016/09/19 全球购物
VIVOBAREFOOT赤脚鞋:让您的脚做自然的事情
2017/06/01 全球购物
美国在线面料商店:Fashion Fabrics Club
2020/01/31 全球购物
大专生的学习自我评价
2013/12/04 职场文书
入党自我评价优缺点
2014/01/25 职场文书
《鸿门宴》教学反思
2014/04/22 职场文书
舞蹈专业求职信
2014/06/13 职场文书
材料员岗位职责范本
2015/04/11 职场文书
学校捐书活动总结
2015/05/08 职场文书
2019最新版劳务派遣管理制度
2019/08/16 职场文书
goland 清除所有的默认设置操作
2021/04/28 Golang