1.陣列拍平也稱陣列扁平化,就是將陣列裡面的陣列開啟,最後合併為乙個陣列
2.實現
var arr = [1,2,[3,4,5,[6,7,8],9],10,[11,12]];
a:遞迴實現
functionfn(arr)
else
})return
arr1
}
b:reduce實現
functionfn(arr),)
}
c:flat
引數為層數(預設一層)
arr.flat(infinity)
d:擴充套件運算子
functionfn(arr)
else
})if(bstop)
return
fn(arr1)
}
e:tostring
let arr1 = arr.tostring().split(',').map((val)=>)console.log(arr1)
functionflatten(arr)
return
arr;
}
巢狀陣列拍平(陣列扁平化)
var arr 1,2,3 4,5,6 var arr flat arr.flat infinity flat 預設只會 拉平 一層,如果想要 拉平 多層的巢狀陣列,可以將flat 方法的引數寫成乙個整數,表示想要拉平的層數,預設為1。如果不管有多少層巢狀,都要轉成一維陣列,可以用infinity關...
js 陣列扁平化
陣列扁平化是指將乙個多維陣列變為一維陣列 遍歷陣列arr,若arr i 為陣列則遞迴遍歷,直至arr i 不為陣列然後與之前的結果concat 遍歷陣列每一項,若值為陣列則遞迴遍歷,否則concat。function flatten arr 1,2,3,4,5 1,2,3,4,5 2.1.reduc...
js陣列扁平化
所謂陣列扁平化,就是將乙個二維或多維陣列轉換為一維陣列。比如將 1,2 3,4,5 轉化為 1,2,3,4,5 1 首先想到設定乙個空陣列,如果原陣列中的每一項不是陣列,直接push進去,如果是陣列,就與這個空陣列進行連線 實現 let flatarr arr else return result ...