Nao sou muito bom em Javascript mas eu faria assim:
// ### Meu for loop em funcao recursiva ### //
function for_loop(
action = (i) => {},
index = 0,
proceed = (i) => true,
increment = (i) => i + 1
) {
if (proceed(index)) {
action(index);
for_loop(action, increment(index), proceed, increment);
}
}
Aqui algums exemplos:
// ### Exemplo 1 ### //
// For loop tradicional
for(let i = 0; i <= 5; i++) {
console.log(`Primeiro exemplo ${i}`)
}
// For loop em funcao
for_loop(
i => console.log(`Primeiro exemplo ${i}`),
0,
i => i <= 5
)
// ### Exemplo 2 ### //
// For loop tradicional
for(let i = 0; i <= 5; i+=2) {
console.log(`Segundo exemplo ${i}`)
}
// For loop em funcao
for_loop(
i => console.log(`Segundo exemplo ${i}`),
0,
i => i <= 5,
i => i += 2
)