const _3D = (asg)=>{
let copynub = [1];
const size = [...asg].reverse().reduce((p,n)=>{
p = p.length ?? p;
copynub.push(p);
return p * n.length;
});
const newitem = copynub.reverse().map((item,index)=>{
return asg[index].map(k=>Array(item).fill(k)).flat();
});
return Array(size).fill(size).map((_,k) => newitem.map(item => item[k % item.length] ));
}
console.time('计算用时By没想好');
const res = _3D([[1,2,3,4,5,6,7,8,9,0],[1,2,3,4,5,6,7,8,9,0],[1,2,3,4,5,6,7,8,9,0]]);
console.timeEnd('计算用时By没想好');
console.log("res>",res);
console.log("res.length>",res.length);
console