搜尋

首頁  >  問答  >  主體

javascript - 箭頭函數的最簡形式是不是不能反回一個物件? 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]
黄舟黄舟2720 天前1115

全部回覆(2)我來回復

  • phpcn_u1582

    phpcn_u15822017-06-14 10:55:09

    絕對不能直接用{},因為實作函數體也是用{},會被認為是函數體裡面有一個a:1表達式

    最簡化的寫法應該是用()包起來

    arr.map(i => ({a: i}))

    回覆
    0
  • 阿神

    阿神2017-06-14 10:55:09

    雷雷

    回覆
    0
  • 取消回覆