Estoy trabajando en un curso de Javascript y actualmente estoy aprendiendo sobre declaraciones de interrupción en bucles for. El texto del curso dice que puedo escribir sentencias if/else en lugar de usar la sentencia break para lograr lo mismo. Tengo una solución, pero fue difícil encontrarla y también parece una solución bastante poco elegante.
Codifique usando la instrucción break:
var numsArray = [1, 2, 3, 4, 5]; // stipulation: do not print out elements with index value greater than 2 for (var i = 0; i < numsArray.length; i++) { if (i > 2) { console.log('FOR LOOP BROKEN'); break; // ends loop } console.log('current index:', i); console.log('current element:', numsArray[i]); console.log('=============='); }Código reescrito para usar solo declaraciones if/else:
var numsArray = [1, 2, 3, 4, 5]; // stipulation: do not print out elements with index value greater than 2 for (var i = 0; i < numsArray.length; i++) { if (i > 2) { console.log('FOR LOOP BROKEN'); i = numsArray.length; // ends loop } else { console.log('current index:', i); console.log('current element:', numsArray[i]); console.log('=============='); } }Esto funciona, pero creo que debería haber una mejor manera de asegurarse de que el ciclo no ejecute las declaraciones después del bloque de declaraciones if. ¿Esta ahí?