2017-09-06 11 views
-1

オブジェクトの配列があるとします。オブジェクトのプロパティ名のみで新しいオブジェクトの配列にフィルタリングする方法を考えます。私は(Object.keys())を使用する必要があります、es6で最高の解決策は何ですか。オブジェクトの名前からオブジェクトの新しい配列への配列の配列

data=[{ 
    deviceId:2 
    deviceStatus:"Online" 
    deviceType:"Tag" 
    lastAliveMessage:null 
    name: 'name:"Some Text' 
    location: location.name 
},{ 
    deviceId:2 
    deviceStatus:"Online" 
    deviceType:"Tag" 
    lastAliveMessage:null 
    name: 'name:"Some Text' 
    location: location.name 
}] 

次のようになります。

コード-ゴルフしようとした
filteredArr = [{ 
    datakey: 'deviceID', 
    label: 'label', 
}, 
{ 
datakey: 'deviceStatus', 
label: 'label', 
}, 
{ 
datakey: 'deviceType', 
label: 'label', 
}, 
{ 
datakey: 'deviceID', 
label: 'label', 
}, 
{ 
datakey: 'lastAliveMessage', 
label: 'label', 
}, 
{ 
datakey: 'name', 
label: 'label', 
}] 
+2

多分あなたは**最高**ソリューションを求める前に、一つの解決策で始まります... –

答えて

0

それ:

filteredArray = Object.keys(data[0]).map(key => ({datakey: key, label: 'label'})) 
関連する問題