用js寫,有大神幫忙嗎
uj5u.com熱心網友回復:
(function(arr){
var r = [];
for (var i=0;i<arr.length;i++)
{
r = (function(a,b){
if (a.length==0)
{
return b;
}else{
var c=a,r=[];
for(var x=0;x<c.length;x++){
for(var y=0;y<b.length;y++){
r.push(c[x]+b[y]);
}
}
return r
}
})(r,arr[i])
}
console.log(r.join(','))
return r
})([['a','b'],['n','m','x','y'],['0','1']])
uj5u.com熱心網友回復:
const arr = [['a', 'b'], ['m', 'n'], [0, 1]]
function doArr (arr) {
let result = arr.shift()
while (arr.length) {
const other = arr.shift()
const newResult = []
result.forEach(item => {
other.forEach(_item => {
newResult.push(item + '' + _item)
})
})
result = [...newResult]
}
return result
}
const result = doArr(arr)
console.log(result)
arr 為 [['a', 'b'], ['m', 'n'], [0, 1]]
// ["am0", "am1", "an0", "an1", "bm0", "bm1", "bn0", "bn1"]
arr 為 arr = [['a', 'b'], ['m', 'n'], [0, 1], [3, 4]]
// ["am03", "am04", "am13", "am14", "an03", "an04", "an13", "an14", "bm03", "bm04", "bm13", "bm14", "bn03", "bn04", "bn13", "bn14"]
uj5u.com熱心網友回復:
這個方法不管多少層都可以,而且不需要遞回
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/279131.html
標籤:JavaScript
