I just noticed that Babel support trailing commas in function arguments lists, imports and destructuring as well:
http://babeljs.io/repl/#?experimental=true&evaluate=true&loose=false&spec=false&code=import%20%7B%0A%20%20voo%2C%0A%20%20doo%2C%0A%7D%20from%20%22.%2Fdat.js%22%3B%0A%0Alet%20%7B%0A%20%20x%2C%0A%20%20y%2C%0A%7D%20%3D%20voo%3B%0A%0Alet%20%5B%0A%20%20z%2C%0A%20%20m%2C%0A%5D%20%3D%20doo%3B%0A%0Afunction%20qoo%20(%0A%20%20x%2C%0A%20%20y%2C%0A)%20%7B%7D Is this correct behavior? I'm not FWIW as I already use trailing commas object and array literals for better diffs, I really like this feature as it comes in handy especially in function signatures where you define types (TypeScript/flow style annotations), for example: function sort <T> ( array : Array<T>, compareFn : ((left: T, right: T) => number), ) : Array<T> { ... } as well as import statements for modules that declare constants: import { BRAND_COLOR, DEFAULT_TEXT_COLOR, DARK_GRAY, LIGHT_GRAY, } from "./constants/COLORS"; not to mention "options object" style function signatures: class Person { constructor ({ firstName, lastName, birthDate, country, city, zipCode, }) { this.firstName = firstName; this.lastName = lastName; this.birthDate = birthDate; this.country = country; this.city = city; this.zipCode = zipCode; } } To me, the spec language as per Jason's HTML version looks like at least for destructuring this is supported, but at least I can't read the spec to allow trailing commas in function signatures. At least this doesn't seem to be incorporated into the spec: https://esdiscuss.org/notes/2014-09/trailing_comma_proposal.pdf Is the proposal still on track for ES7 and am I correct in my reading of the destructuring allowing trailing commas?
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

