В функции есть конструкция switch, проверяющая n букв в двух строках на одинаковых позициях на соответствие:
switch (number) {
case 3:
for (let i = 0; i < one.length; i += 3) {
if (one[i] == two[i] && one[i + 1] == two[i + 1] && one[i + 2] == two[i + 2]) {
result += one[i] + one[i + 1] + one[i + 2] + " ";
}
}
break;
case 4:
for (let i = 0; i < one.length; i += 4) {
if (one[i] == two[i] && one[i + 1] == two[i + 1] && one[i + 2] == two[i + 2] && one[i + 3] == two[i + 3]) {
result += one[i] + one[i + 1] + one[i + 2] + one[i + 3] + " ";
}
}
break;
case 5:
for (let i = 0; i < one.length; i += 5) {
if (one[i] == two[i] && one[i + 1] == two[i + 1] && one[i + 2] == two[i + 2] && one[i + 3] == two[i + 3] && one[i + 4] == two[i + 4]) {
result += one[i] + one[i + 1] + one[i + 2] + one[i + 3] + one[i + 4] + " ";
}
}
break;
case 6:
for (let i = 0; i < one.length; i += 5) {
if (one[i] == two[i] && one[i + 1] == two[i + 1] && one[i + 2] == two[i + 2] && one[i + 3] == two[i + 3] && one[i + 4] == two[i + 4]) {
result += one[i] + one[i + 1] + one[i + 2] + one[i + 3] + one[i + 4] + " ";
}
}
break;
}
Дело в том, что таких n может быть и 30 штук, и по-любому можно как-то обойтись без 30 проверок, но я не знаю, как. Помогите, пожалуйста.