箭头函数的最简形式是不是不能反回一个对象?map(i => { name: i})

箭头函数如果不用花括号{},就相当于直接返回

const arr = [1, 2, 3, 4]
arr.map(i => i) // 1 ,2 ,3, 4

但是如果我要返回一个对象,就是不死不能用最简形式了?

arr.map(i => { a: i}) // [undefined, undefined, undefined, undefined]

必须要用花括号括起来才行

arr.map(i => return {{ a: i}}) //  [Object, Object, Object, Object]
阅读 2.9k
2 个回答

肯定不能直接用{},因为实现函数体也是用{},会被认为是函数体里面有一个a:1表达式

最简化的写法应该是用()包起来

arr.map(i => ({a: i}))
arr.map(i => ({ a: i})) 
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题