2017-09-06 1 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'}))