问:最近,我在看阮阮(Ruan Shen)对ES6的介绍,其中编程风格一章建议多行对象的最后一个成员以逗号结尾。这与JSON的编写格式并不矛盾。转换时很容易出错。你为什么推荐这个?
来自ES6简介书:Please enter the code在一行上定义的对象。最后一个成员不以逗号结尾。多行定义的对象,最后一个成员以逗号结尾。
// bad
const a = { k1: v1, k2: v2, };
const b = {
k1: v1,
k2: v2
};
// good
const a = { k1: v1, k2: v2 };
const b = {
k1: v1,
k2: v2,
答:实际上,根据日常习惯,如果要在多行JSON的末尾添加元素,则有必要在原始文本的最后一行后添加逗号。
ES6该建议是由于以下事实:许多程序员都不愿意在两条变更线之间增加值。
目前,JS中的JSON是否以逗号结尾而不是JSON文件并不重要。
ES7还建议以逗号开头。
答:这是一个规范。建议使用此方法编写。添加对象属性时,无需编写逗号
,因此,JSON.stringify也可以对其进行分析