Quick JavaScript tip: trailing commas inside an object literal
Join the DZone community and get the full member experience.
Join For FreeIt used to be that some JavaScript engines weren’t picky about trailing commas inside an object literals, while others threw a syntax error. The ECMAScript 5 language specification [1] has made trailing commas legal, via the following syntax rule (in Sect. 11.1.5):
ObjectLiteral : {} { PropertyNameAndValueList } { PropertyNameAndValueList , }You can use this syntax in all modern browsers [3]. It makes it easier to maintain the content inside object literals, especially long ones: You don’t have to keep track which property is last when rearranging things. Take the following example.
var obj = { foo: 123, bar: function () { ... }, }Thanks to the trailing comma, you save two steps when swapping foo and bar, as there is no need to add a comma after bar or to remove the comma after foo.
Related reading:
- Standard ECMA-262: ECMAScript Language Specification
- What’s new in ECMAScript 5
- ECMAScript 5 compatibility table
From http://www.2ality.com/2011/06/object-literal-comma.html
Literal (computer programming)
Object (computer science)
JavaScript
Opinions expressed by DZone contributors are their own.
Comments