如何使用 JavaScript 動態組合所有提供的陣列?
假設我們有兩個這樣的陣列 −
const arr1= ['a', 'b', 'c']; const arr2= ['d', 'e', 'f'];
我們要求編寫一個 JavaScript 函式,該函式輸入兩個這樣的陣列,並從陣列中構建所有可能的組合。
因此,對於這兩個陣列,輸出應如下所示 −
const output = [ad, ae, af, bd, be, bf, cd, ce, cf];
示例
程式碼如下 −
const arr1= ['a', 'b', 'c'];
const arr2= ['d', 'e', 'f'];
const combineArrays = (...arr) => {
const res = [];
const combinePart = (part, index) => {
arr[index].forEach(el => {
const p = part.concat(el);
if(p.length === arr.length){
res.push(p.join(''));
return;
};
combinePart(p, index + 1);
});
};
combinePart([], 0);
return res;
}
console.log(combineArrays(arr1, arr2));輸出
控制檯中的輸出將如下 −
[ 'ad', 'ae', 'af', 'bd', 'be', 'bf', 'cd', 'ce', 'cf' ]
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP