Javascript 如何在另一个数组中检索具有值的数组?

Javascript 如何在另一个数组中检索具有值的数组?,javascript,Javascript,我正在尝试使用filter方法检索另一个数组中具有值的数组。那么比如说从这个 [[], [{name:"shop", price: 48}],[]] 对此 [{name:"shop", price: 48}] 从下面的console.log中,我得到了{name:“shop”,price:48},但是当我返回v,我得到了整个东西-->[[],[{name:“shop”,price:48}],] 我错过了什么 const a=[[],[{名称:“店铺

我正在尝试使用filter方法检索另一个数组中具有值的数组。那么比如说从这个

[[], [{name:"shop", price: 48}],[]] 
对此

[{name:"shop", price: 48}]
从下面的console.log中,我得到了
{name:“shop”,price:48}
,但是当我返回
v
,我得到了整个东西-->
[[],[{name:“shop”,price:48}],]

我错过了什么

const a=[[],[{名称:“店铺”,价格:48}],[]
常量输出=a.map((值)=>{
返回值。筛选器((v)=>{
控制台日志(v)
返回v
})
})

控制台日志(输出)你在找这个吗

const a=[[],[{名称:“店铺”,价格:48}],[]
const[output]=a.filter(v=>v.length);//将筛选出空数组

控制台日志(输出)你在找这个吗

const a=[[],[{名称:“店铺”,价格:48}],[]
const[output]=a.filter(v=>v.length);//将筛选出空数组

控制台日志(输出)我的将子阵列连接到一个阵列的解决方案:

const a = [[], [{name:"shop", price: 12}], [{name:"shop", price: 34}]];

let res = [];
a.forEach((aItem) => res = res.concat(aItem));

console.log(res);
输出

[ { name: 'shop', price: 12 }, { name: 'shop', price: 34 } ]

我将子阵列合并到一个阵列中的解决方案:

const a = [[], [{name:"shop", price: 12}], [{name:"shop", price: 34}]];

let res = [];
a.forEach((aItem) => res = res.concat(aItem));

console.log(res);
输出

[ { name: 'shop', price: 12 }, { name: 'shop', price: 34 } ]

map函数除了克隆初始数组之外什么都不做,那么你期望什么呢?如果有几个数组是非空的,那么在这些情况下你期望什么呢?如果你想过滤掉空数组,那么就应用这样的过滤器。map函数除了克隆初始数组之外什么都不做,那么您希望得到什么呢?如果有几个数组是非空的,那么在这些情况下您希望得到什么呢?如果您希望过滤掉空数组,那么应用这样的过滤器。