[英]Remove base key object from array of object using lodash or javascript
我有如下的對象數組,其中的對象具有一組值。
我需要刪除所有數據的基礎對象,並將其作為下面的“預期結果”。
示例數組
[
{
"100": {
"id": "100",
"name": "Test name 1"
},
"101": {
"id": "101",
"name": "Test name 2"
},
"102": {
"id": "102",
"name": "Test name 3"
}
}
]
預期結果
[
{
"id": "100",
"name": "Test name 1"
},
{
"id": "101",
"name": "Test name 2"
},
{
"id": "102",
"name": "Test name 3"
}
]
可以用迭代Array.map()
獲取與該對象的值Object.values()
並通過壓平的結果,單個陣列擴展成Array.concat()
const data = [{"100":{"id":"100","name":"Test name 1"},"101":{"id":"101","name":"Test name 2"},"102":{"id":"102","name":"Test name 3"}}]; const result = [].concat(... data.map(o => Object.values(o)) ); console.log(result);
使用lodash可以將_.flatMap()
與_.values()
:
const data = [{"100":{"id":"100","name":"Test name 1"},"101":{"id":"101","name":"Test name 2"},"102":{"id":"102","name":"Test name 3"}}]; const result = _.flatMap(data, _.values); console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.