2017-09-06 1 views
-1

Supposons que j'ai un tableau d'objet, comment filtrer vers un nouveau tableau d'objet avec seulement le nom de la propriété d'objet. Dois-je utiliser (Object.keys()), quelle est la meilleure solution avec es6.Tableau de filtres du nom de propriété d'objet au nouveau tableau d'objets

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 
}] 

devrait être:

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

vous commencez peut-être avec une solution avant de demander la meilleure solution ** ** ... –

Répondre

0

Essayé au code-golf il:

filteredArray = Object.keys(data[0]).map(key => ({datakey: key, label: 'label'}))