這可能是重複的,但在我搜索的任何地方,我似乎只能找到想要創建對象數組的人。 基本上我試圖達到相反的目的,將對象數組的某些值拉到對象中。它有點扭曲我的頭,所以如果你可以給我一隻手,你們中的任何一個JS大師將會非常感激!從一組對象中創建一個新對象
基本上我有對象的一個這樣的數組:
[
{ field: 'name', value: 'sam', isRequired: true },
{ field: 'email', value: '[email protected]', isRequired: true },
{ field: 'message', value: 'hey', isRequired: false },
]
他們分手了這種方式,因爲我經過了驗證字段。
驗證階段我想一個新的對象e.g中映射字段和值屬性名稱值對後:
{
name: 'sam',
email: '[email protected]',
message: 'hey',
}
就像我說的任何幫助將是驚人的!乾杯。
循環:然後合併新對象陣列使用spread syntax和
Object#assign
到對象。獲取'element.field'和'element.value'並將它們用作結果對象中新屬性的名稱和值。這很難做什麼? – Barmar'var result = array.reduce((final,obj)=>(final [obj.field] = obj.value,final),{});' –
我猜只是實現,我會用Object.assign和那麼內部的地圖循環呢?另外,如果這是一個重複,請指出原始問題,我找不到它?謝謝 –