Javascript 如何删除多个空数组包装器并只保留对象

Javascript 如何删除多个空数组包装器并只保留对象,javascript,arrays,typescript,multidimensional-array,Javascript,Arrays,Typescript,Multidimensional Array,如何删除所有空数组包装器 从这到 [[[{"type":"banana"},{"type":"orange"}]]] 对此 {"type":"banana"},{"type":"orange"} 如果对象是数组,则应将其保留。使用递归- const input=[[{“type”:“banana”},{“type”:“orange”}]]; 函数(输入){ 返回输入.reduce((acu,val)=>Array.isArray(val)?accu.concat(flattdeep(val

如何删除所有空数组包装器

从这到

[[[{"type":"banana"},{"type":"orange"}]]]
对此

{"type":"banana"},{"type":"orange"}

如果对象是数组,则应将其保留。

使用
递归
-

const input=[[{“type”:“banana”},{“type”:“orange”}]];
函数(输入){
返回输入.reduce((acu,val)=>Array.isArray(val)?accu.concat(flattdeep(val)):accu.concat(val),[]);
}

console.log(flattedeep(输入))但最终输出仍在数组中。@user007-如果要在对象中。您可以将数组内容分散在一个对象中,比如-
console.log({…flattedeep(input)})