javascript数组元素全排列

Posted 前端博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript数组元素全排列相关的知识,希望对你有一定的参考价值。

多个数组(数量不定)
例如三个数组 {a,b} {1,2} {d}
排列组合后为
a,1,d
a,2,d
b,1,d
b,2,d
是js的算法哦

 

var arr = [["a","b"],["1","2"],["d"]];
var sarr = [[]];
for (var i = 0; i < arr.length; i++) {
    var tarr = [];
    for (var j = 0; j < sarr.length; j++)
        for (var k = 0; k < arr[i].length; k++)
            tarr.push(sarr[j].concat(arr[i][k]));
    sarr = tarr;
}
alert(sarr.join("\n"));

以上是关于javascript数组元素全排列的主要内容,如果未能解决你的问题,请参考以下文章

输出数组全排列

全排列

全排列permutation

递归实现全排列算法-161029

python非递归全排列

JavaScript单行代码,也就是代码片段