如何实现多个数组的组合?

如:数组1{A,B},数组2{1,2,3},数组3{生,活}~~~~~~数组n{m1,m2...mn}合成新的组合或者字符串
A,1,生~~~,mn
B,1,生~~~,mn
A,2,生~~~,mn
B,2,生~~~,mn
A,2,活~~~,mn
B,2,活~~~,mn
A,1,活~~~,mn
B,1,活~~~,mn

[code="java"]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">


New Document




<br> var a = new Array(&#39;A&#39;,&#39;B&#39;);<br> var b = new Array(&#39;1&#39;,&#39;2&#39;,&#39;3&#39;);<br> var c = new Array(&#39;生&#39;,&#39;活&#39;);<br> var d = new Array(&#39;m&#39;,&#39;n&#39;,&#39;mn&#39;);<br> var array = new Array(4);<br> array[0]=a;<br> array[1]=b;<br> array[2]=c;<br> array[3]=d;<br> getnext(&#39;&#39;,array);</p> <pre><code>function getnext(str,arr){ var subA = arr[0]; var newArr = copyArray(arr); for(var n=0;n&lt;subA.length;n++){ if(newArr){ getnext(str+subA[n], newArr); } else{ // alert(str+subA[n]); console.log(str+subA[n]); } } } function copyArray(arr){ if(arr.length&gt;1){ var b = new Array(arr.length-1); for(var i=1;i&lt;arr.length;i++){ b[i-1] = arr[i]; } return b; } } </code></pre> <p>

[/code]