[英]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.