Javascript 如何展平嵌套对象?

Javascript 如何展平嵌套对象?,javascript,json,typescript,Javascript,Json,Typescript,我有以下嵌套对象: [ { "id": "b2dgd67e7e7", "fields": { "task1": "task 1", "task2": "task 2" } }, { "id": "b2dgd67e7e8", "fields": { "task1": "task 3", "task2": "task 4" } } ] 我想将其展平为以下格式: [ { "id"

我有以下嵌套对象:

[
{
    "id": "b2dgd67e7e7",
    "fields": {
        "task1": "task 1",
        "task2": "task 2"
    }
},
 {
    "id": "b2dgd67e7e8",
    "fields": {
        "task1": "task 3",
        "task2": "task 4"
    }
}
]
我想将其展平为以下格式:

[
{
    "id": "b2dgd67e7e7",
    "fields": {
        "task1": "task 1",
        "task2": "task 2"
    }
},
 {
    "id": "b2dgd67e7e8",
    "fields": {
        "task1": "task 3",
        "task2": "task 4"
    }
}
]
[
{

    "fields": {
        "task1": "task 1",
        "task2": "task 2",
        "id": "b2dgd67e7e7",
    }
},
 {

    "fields": {
        "task1": "task 3",
        "task2": "task 4",
        "id": "b2dgd67e7e8",
    }
}
]
您可以在阵列上使用来构建映射对象的新阵列。要映射每个对象,您可以从对象中选择
id
fields
属性,然后返回一个新对象,其中包含
fields
属性以及
fields
对象值的原始内容以及剩余的外部属性(如id):

[
{
    "id": "b2dgd67e7e7",
    "fields": {
        "task1": "task 1",
        "task2": "task 2"
    }
},
 {
    "id": "b2dgd67e7e8",
    "fields": {
        "task1": "task 3",
        "task2": "task 4"
    }
}
]
const arr=[{“id”:“b2dgd67e7e7”,“fields”:{“task1”:“task1”:“task1”,“task2”:“task2”},{“id”:“b2dgd67e7e8”,“fields”:{“task1”:“task3”,“task2”:“task4”}];
常数Y=(arr,key)=>
arr.map(({[key]:k,…r})=>({[key]:{…k,…r}));
const res=y(arr,‘fields’);
控制台日志(res)可以在数组上使用来构建映射对象的新数组。要映射每个对象,您可以从对象中选择
id
fields
属性,然后返回一个新对象,其中包含
fields
属性以及
fields
对象值的原始内容以及剩余的外部属性(如id):

[
{
    "id": "b2dgd67e7e7",
    "fields": {
        "task1": "task 1",
        "task2": "task 2"
    }
},
 {
    "id": "b2dgd67e7e8",
    "fields": {
        "task1": "task 3",
        "task2": "task 4"
    }
}
]
const arr=[{“id”:“b2dgd67e7e7”,“fields”:{“task1”:“task1”:“task1”,“task2”:“task2”},{“id”:“b2dgd67e7e8”,“fields”:{“task1”:“task3”,“task2”:“task4”}];
常数Y=(arr,key)=>
arr.map(({[key]:k,…r})=>({[key]:{…k,…r}));
const res=y(arr,‘fields’);

控制台日志(res)到目前为止您尝试了什么?您需要通用函数还是特定函数function@bryan60到目前为止您尝试了什么?您需要通用函数还是特定函数function@bryan60通用的