国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

javascript - JS為物件新增多個(gè)動(dòng)態(tài)屬性
僅有的幸福
僅有的幸福 2017-06-26 10:51:28
0
5
937
let Obj={};

//給出一個(gè)數(shù)組
var arr = [
    {a: 'aa'},
    {b: 'bb'},
    {c: 'cc'}
]
//生成如下格式
Obj={
  a:'aa',
  b:'bb',
  c:'cc'
}

個(gè)人覺(jué)得可以使用Object.assign()來(lái)合併,不知道有沒(méi)有其他好的方法?

僅有的幸福
僅有的幸福

全部回覆(5)
小葫蘆

雷雷

小葫蘆

雷雷

代言

@冴羽 和 @cool_zjy 的方案類似,不過(guò)都是產(chǎn)生的一個(gè)新對(duì)象,按原題意,reduce 的初始值傳入 Obj 代替 {} 就好。前者不需要 ES6 特性,後者需要。

@hsfzxjy 的方法看起來(lái)固然是簡(jiǎn)捷了,但是會(huì)產(chǎn)生好多中間對(duì)象,所以效率應(yīng)該不會(huì)很好。

Object.assign 的方案應(yīng)該是最簡(jiǎn)捷了,當(dāng)然也許 Lodash 函式庫(kù)中能找到一個(gè)更簡(jiǎn)單的 API 來(lái)實(shí)作。

給我你的懷抱

瀉藥。用 ES6 的 Spread Operator 可以更簡(jiǎn)潔,不過(guò)本質(zhì)是一樣的

let arr = [
    {a: 'aa'},
    {b: 'bb'},
    {c: 'cc'}
]

let obj = arr.reduce((x, y) => ({...x, ...y}), {})
console.log(obj)

洪濤

先自問(wèn)自答,使用Object.assign()來(lái)合併,不知道有沒(méi)有其他好的方法

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板