对象是这样的 -
clients = [
[{
"label": "MongoDb",
"value": "5ee71c494be8d0180c1b63d6"
},
{
"label": "Hawlett",
"value": "5ee71b5e4be8d0180c1b63d2"
},
{
"label": "Coca Cola",
"value": "5ee7195ef2d5e0175c5da986"
}
],
[{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
],
[{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
]
]
我想把数组做成如下图所示的形式,以获得一个新的对象id数组来进一步执行任务--。
expected = ["5ee71c494be8d0180c1b63d6","5ee71b5e4be8d0180c1b63d2","5ee7195ef2d5e0175c5da986" ....]
任何帮助将被感激.我是新的Javascript。我希望有一种方法可以用较少的代码来完成这个任务。
const clients = [
[{
"label": "MongoDb",
"value": "5ee71c494be8d0180c1b63d6"
},
{
"label": "Hawlett",
"value": "5ee71b5e4be8d0180c1b63d2"
},
{
"label": "Coca Cola",
"value": "5ee7195ef2d5e0175c5da986"
}
],
[{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
],
[{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
]
]
const res = clients
.flatMap(arr => arr)
.map(({value}) => value)
console.log(res)
那么使用 .flat()
然后 .map()
let clients = [
[{
"label": "MongoDb",
"value": "5ee71c494be8d0180c1b63d6"
},
{
"label": "Hawlett",
"value": "5ee71b5e4be8d0180c1b63d2"
},
{
"label": "Coca Cola",
"value": "5ee7195ef2d5e0175c5da986"
}
],
[{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
],
[{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
]
]
let result = clients.flat().map(el => el.value);
console.log(result);
您可以使用 flatMap()
和 map()
:
clients = [
[
{
"label": "MongoDb",
"value": "5ee71c494be8d0180c1b63d6"
},
{
"label": "Hawlett",
"value": "5ee71b5e4be8d0180c1b63d2"
},
{
"label": "Coca Cola",
"value": "5ee7195ef2d5e0175c5da986"
}
],
[
{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
],
[
{
"label": "Tarun infotech",
"value": "5ee71cc94be8d0180c1b63db"
},
{
"label": "Sahara",
"value": "5ee71c884be8d0180c1b63d9"
}
]
];
let values = clients.flatMap(c => c.map(a => a.value));
console.log(values);