如何在Javascript中以更优雅的方式实现此数组映射?
我试图从主数组的所有对象中获取类别数组,并将它们合并到一个数组中如何在Javascript中以更优雅的方式实现此数组映射?,javascript,arrays,ecmascript-6,ecmascript-5,Javascript,Arrays,Ecmascript 6,Ecmascript 5,我试图从主数组的所有对象中获取类别数组,并将它们合并到一个数组中 const allItems = res.map((item) => item.categories)[0] 怎样才能正确地完成呢?那么,为什么要映射所有项目,而只获取第一个项目呢 你可以: const res=[ {类别:“a”}, {类别:“b”}, {类别:“c”}, ]; const categories=res[0]。类别; 控制台日志(类别)我认为您正在尝试将类别数组的所有元素放入同一个数组(一开始是一个对象
const allItems = res.map((item) => item.categories)[0]
怎样才能正确地完成呢?那么,为什么要映射所有项目,而只获取第一个项目呢 你可以:
const res=[
{类别:“a”},
{类别:“b”},
{类别:“c”},
];
const categories=res[0]。类别;
控制台日志(类别)
我认为您正在尝试将类别
数组的所有元素放入同一个数组(一开始是一个对象数组)
既然你没有写任何代码,我想allItems
是这样的:
var allItems = [
{
one: "a",
categories: ["cat1", "cat2", "cat3"]
},
{
two: "b",
categories: ["cat4", "cat5", "cat6"]
},
{
three: "c",
categories: ["cat7", "cat8", "cat9"]
}
]
使用
使所有项目
填充项目的所有元素。类别
["cat1", "cat2", "cat3", "cat4", "cat5", "cat6", "cat7", "cat8", "cat9"]
这只是拉取了
res[0]。类别
,对吗?正如georg所说,尽管你可以分解const[{categories}]=res代码>因为您有工作代码,所以这个问题更适合您。然而,奇怪的是,当您只对第一个数组元素的值感兴趣时,却使用映射器。您应该首先描述您的数组以及单个对象是如何生成的。这与您所问的问题截然不同。如果需要准确的帮助,您需要提供更多详细信息,包括输入和预期输出。@pilchard tnx!固定的
["cat1", "cat2", "cat3", "cat4", "cat5", "cat6", "cat7", "cat8", "cat9"]