给出:
myObjArray = [ [ [ [Object] ] ], [ [ [Object] ] ], [ [ [Object] ] ] ]
所需结果
[{Object},{Object},{Object}]
那么有没有办法将[Object(s)]从数组中拉出来并放入一个新的对象中?
答案 0 :(得分:5)
将array.prototype.map
与递归函数一起使用,该函数从嵌套数组中检索对象:
var arr = [ [ [ [ { prop: 'val1' }] ] ], [ [ [{ prop: 'val2' }] ] ], [ [ [{ prop: 'val3' }] ] ] ];
var res = arr.map(getObject);
function getObject(o) {
return Array.isArray(o) ? getObject(o[0]) : o;
}
console.log(res);