如题:一个多维数组,如何转化成多对多的关系,可能存在N层;<script> var a = [[{a:1},{b:3}], [{d:2},{e:3}]]; //可能存在多层 //结果 [{a:1},{d:2}] [{a:1},{e:3}] [{b:3},{d:2}] [{b:3},{e:3}] ...</script>
1 回答
天涯尽头无女友
TA贡献1831条经验 获得超9个赞
function gen (list) {
var result = []
_gen(list, 0, [])
return result
function _gen (list, level, path) {
if (level >= list.length) {
return result.push(path.slice(0))
}
var lev = list[level]
for (var i = 0; i < lev.length; i += 1) {
path.push(lev[i])
_gen(list, level + 1, path)
path.pop()
}
}
}
添加回答
举报
0/150
提交
取消
