Javascript-组合多维数组的元素
我正在尝试组合多维数组的所有元素,以获得元素的组合 e、 g.如果我有Javascript-组合多维数组的元素,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我正在尝试组合多维数组的所有元素,以获得元素的组合 e、 g.如果我有 var array = [ ['a'], ['1', '2', '3', '4'], ['A'] ]; 结果必须如下所示: ["a1A", "a2A", "a3A", "a4A"] 我可以通过以下代码实现此结果: var finalArray = []; var f1 = 0; for (var i = 0; i < array.length - 1; i ++)
var array = [
['a'],
['1', '2', '3', '4'],
['A']
];
结果必须如下所示:
["a1A", "a2A", "a3A", "a4A"]
我可以通过以下代码实现此结果:
var finalArray = [];
var f1 = 0;
for (var i = 0; i < array.length - 1; i ++) {
f1 = 0;
for (var j = 0; j < array[i].length; j ++) {
for (var k = 0; k < array[i + 1].length; k ++) {
if (finalArray[f1])
finalArray[f1] += array[i + 1][k];
else
finalArray[f1] = array[i][j] + array[i + 1][k];
f1 ++;
}
}
}
console.log(finalArray);
返回:
["a1A", "a2A", "a3A", "a4A", "b1", "b2", "b3", "b4"]
应该是:
["a1A", "a2A", "a3A", "a4A", "b1A", "b2A", "b3A", "b4A"]
非常感谢您对修复我的代码所提供的任何帮助。您可以使用迭代和递归的方法来处理可变长度的零件及其长度
函数组合(数组){
功能c(部分,索引){
数组[index].forEach(函数(a){
var p=部分混凝土(a);
if(p.length==array.length){
r、 推(p.join(“”));
返回;
}
c(p,指数+1);
});
}
var r=[];
c([],0);
返回r;
}
var result=combine(['a','b','c'],['1','2','3','4'],['a','b']);
document.write(“”+JSON.stringify(结果,0,4)+“”)谢谢你,尼娜,非常感谢
["a1A", "a2A", "a3A", "a4A", "b1A", "b2A", "b3A", "b4A"]