как создать вот такой треугольник на javaScript?

function makeLine(length) {
  var line = "";
  for (var j = 1; j <= length; j++) {
    line += "* "
  }
  return line + "\n";
}

console.log(makeLine(7));

*
**
***
****
*****
******
*******
********
*********
**********

Ответы (2 шт):

Автор решения: entithat

В Вашем коде проблема в том, что * Вы добавляете только один раз повторяя это length раз. Для того, чтобы кол-во * увеличивалось по мере увеличения i Вам надо добавить ещё один цикл:

function makeLine(length) {
  var line = "";
  for (var j = 1; j <= length; j++) {
    for (var i = 0; i < j; i++) {
      line += "* ";
    }
    line += '\n'; // не забываем про перевод строки
  }
  return line;
}

console.log(makeLine(7));

Либо сделать иначе:

for (let i = 0; i < 7; i++) {
  console.log(new Array(i + 1).fill('*').join(''));
}

→ Ссылка
Автор решения: Михаил Камахин

Можно использовать вашу функцию makeLine, она будет возвращать строку из звездочек, если 1, то *, если 2, то * *, если 3, то * * * и т.д.

И потом циклом вывести 1,2,3,4,5,6,7 звездочек

function makeLine(length) {
  let line = '*';
  for (let i = 1; i < length; i++) {
    line += ' *';
  }
  return line;
}


for (let i = 1; i <= 7; i++) {
  console.log(makeLine(i));
}

→ Ссылка