小编典典

返回对象的 ECMAScript 6 箭头函数

all

当从箭头函数返回对象时,由于语法上的歧义,似乎有必要使用额外的一组 of{}和一个关键字。return

这意味着我可以——写p => {foo: "bar"},但必须写p => { return {foo: "bar"}; }

如果箭头函数返回对象以外的任何内容,则{}andreturn是不必要的,例如:p => "foo".

p => {foo: "bar"}返回undefined

修改后的p => {"foo": "bar"}throws SyntaxError:意外标记:’ :‘”

我有什么明显的遗漏吗?


阅读 148

收藏
2022-03-02

共1个答案

小编典典

您必须将返回的对象文字包装到括号中。否则花括号将被视为表示函数的主体。以下作品:

p => ({ foo: 'bar' });

您不需要将任何其他表达式包装到括号中:

p => 10;
p => 'foo';
p => true;
p => [1,2,3];
p => null;
p => /^foo$/;

等等。

参考:MDN - 返回对象字面量

2022-03-02