Al devolver un objeto desde una función de flecha, parece que es necesario usar un conjunto adicional de {}
y una return
palabra clave debido a una ambigüedad en la gramática.
Eso significa que no puedo escribir p => {foo: "bar"}
, pero tengo que escribir p => { return {foo: "bar"}; }
.
Si la función devuelve flecha otra cosa que no sea un objeto, el {}
y return
no son necesarios, por ejemplo: p => "foo"
.
p => {foo: "bar"}
vuelve undefined
.
Un p => {"foo": "bar"}
lanzamiento modificado " SyntaxError
: token inesperado: ' :
'" .
¿Hay algo obvio que me estoy perdiendo?