ECMAScript 6 función de flecha que devuelve un objeto

Al devolver un objeto desde una función de flecha, parece que es necesario usar un conjunto adicional de{} y unreturn palabra clave debido a una ambigüedad en la gramática.

Eso significa que no puedo escribirp => {foo: "bar"}, pero tengo que escribirp => { return {foo: "bar"}; }.

Si la función de flecha devuelve algo que no sea un objeto, la{} yreturn son innecesarios, por ejemplo:p => "foo".

p => {foo: "bar"} devolucionesundefined.

A modificadop => {"foo": "bar"} lanza“SyntaxError: símbolo inesperado: ': '”.

¿Hay algo obvio que me estoy perdiendo?

Respuestas a la pregunta(3)

Su respuesta a la pregunta