Вопрос такой. Нужно скомбинировать массивы
Вариант 1
группа1 = 1,2,3
группа2 = 1,2,3
На выходе должно получиться 11, 12, 13, 21, 22, 23, 31,32,33
Вариант2
группа1 = 1,2,3
группа2 = 1,2,3
группа3 = 1,2,3
На выходе должно получиться
111, "112", "113", "121", "122", "123", "131", "132", "133", "211", "212", "213", "221", "222", "223", "231", "232", "233", "311", "312", "313", "321", "322", "323", "331", "332", "333"
У меня получилось несколько вложенных циклов for.
var group1=["1","2","3"];
var group2=["1","2","3"];
var group3=["1","2","3"];
var firstDigit = "";
var secondDigit = "";
var thirdDigit = "";
var pusher = "";
var variants = [];
for(a=0; a<group1.length;a++){
firstDigit = group1[a];
for(b=0;b<group2.length;b++){
secondDigit = group2[b];
for(c=0; c<group3.length; c++){
thirdDigit = group3[c];
pusher = firstDigit + secondDigit + thirdDigit;
variants.push(pusher);
}
}
}
Но как написать универсальный код, если изначально будет неизвестно, сколько групп будет изначально?
Групп с числами может быть как 2, так и 5. И скомбинировать надо по предыдущей схеме.