He estado tratando de resolver esto por un tiempo, pero se me acabaron las posibles soluciones. Esto es para una tarea escolar que está destinada a crear un "triángulo" basado en el número ingresado (así que si pongo 3, la primera línea tendrá 1 asterisco, la segunda tendrá 2 y la tercera 3). El código funciona bien, pero aparece una línea vacía adicional debido a "\n" y no estoy seguro de cómo eliminarlo. Mi código:
function drawTriangle(size) { let string = ""; //declares a variable string for (let i = 1; i <= size; i++) { //loop continues upto size for (let j = 0; j < i; j++) { //loop starts from 0 and ends at i string += "*"; //* is added to string } string += "\n"; //when 1 row is finished, next line is printed on new line } console.log(string); //outputs the string to the console }
Según el comentario Bergi's
, cree una variable de matriz local y agregue un salto de línea al final usando .join("/n")
.
Demostración en vivo :
function drawTriangle(size) { let str = ''; //declares a variable string const arr = []; for (let i = 1; i <= size; i++) { //loop continues upto size for (let j = 0; j < i; j++) { //loop starts from 0 and ends at i str += "*"; //* is added to string } arr.push(str); str = ''; } return arr }; const result = drawTriangle(3).join("\n"); console.log(result);