Вот одна комбинация массивов. Но я хотел бы знать, как лучше всего объединить более одного?
var arr1 = ['a', 'b'];
var arr2 = ['c'];
var arr3 = ['d', 'e', 'f'];
function permutation (list, n) {
var results = []
function _perm (list, n, res, start) {
if (res.length === n) {
return results.push(res.join(','))
}
if (start === list.length) { return }
_perm(list, n, res.slice(), start + 1)
res.push(list[start])
_perm(list, n, res, start + 1)
}
_perm(list, n, [], 0)
return results.length
}
console.log(permutation(arr3, 2)) // print ["e,f", "d,f", "d,e"]
Обновить вопрос:
Комбинация должна быть переставлена между массивами, но Не включать какой-либо отдельный массив. Мне также нужно будет объединить и переставить их в 2D / 3D / 4D-массив соответственно.
Спасибо за любую помощь.