0
我有一個屬性的對象與我想要在具有特定值的同一對象中創建的屬性的名稱。我可以以舊的方式做到這一點,但我認爲簡單的胖箭頭解決方案應該是可行的。而且,我不必使用數組arr對象,而是直接使用設備的caps值。箭頭函數沒有這個引用自己了。如何獲得帽值數組中的括號?動態創建屬性和它們的值
let arr = ["onoff", "alarm_motion", "alarm_night"]
let fillcap = arr => {
let obj = {}
arr.forEach(a => {
return obj[a] = false
})
return obj
}
let device = {
caps: arr,
cap: arr.map(c => ({ [c]: false }))
}
device = { caps: ['onoff', 'alarm_motion', 'alarm_night'],
cap:
[{ onoff: false },
{ alarm_motion: false },
{ alarm_night: false }]
}
device = {
caps: arr,
cap: fillcap(arr)
}
device = {
caps: ['onoff', 'alarm_motion', 'alarm_night'],
cap: { onoff: false, alarm_motion: false, alarm_night: false }
}
地圖給括號中的鍵值對周圍使得它的對象是什麼,我想避免,支架 – wetlip
我修改了答案,@ wetlip – Adam