Estoy aprendiendo bucle en Javascript.
Necesito una salida como esta:
* ** *** **** *****Pero, cuando uso este código:
for (i = 1; i <= 5; i = i + 1) { for (j = 0; j < i; j = j + 1) { console.log('*'); } console.log(""); }Obtuve una salida como esta:
* * * * * * * * * * * * * * *¿Cómo puedo solucionar esto?
En JS, cada console.log() se imprime en una nueva línea. Por lo tanto, tendrá que mantener una cadena a la que siga agregando. Y luego imprímelo:
for (i = 1; i <= 5; i = i + 1) { let str = ""; for (j = 0; j < i; j = j + 1) { str += "*"; } console.log(str); }No necesitas un segundo bucle. Puede lograr el resultado usando 1 bucle y el método de repetición .
for(i=1;i<=5;i=i+1){ console.log('*'.repeat(i)); }Editado según @trincot. Gracias.
En JavaScript, console.log() imprime la salida en una nueva línea , por lo que debe concatenar todas las estrellas en una cadena e imprimirla.
const printPattern = (count, symbol) => { for (let i = 1; i <= count; i++) { console.log(symbol.repeat(i)); } }; printPattern(5, '*');