嵌套循环模式添加一些字符串

nested loop pattern add some strings

谁能帮我找到这段代码的伪代码,因为我想输出代码:

1****
12***
123**
1234*
12345

我想在输出中添加星星,无需展开语法或魔法,

我在这里写的下面的代码只打印没有星号:

var num = 5;

for(var i = 1 ; i <= num ; i++){
       var str = "";
  for(var j = 1 ; j <= i ; j++){
          str += j
  };
  console.log(str)
};

检查 str.repeat 星号的长度 5 - length 次:

var num = 5;
for (var i = 1; i <= num; i++) {
  var str = "";
  for (var j = 1; j <= i; j++) {
    str += j
  };
  str += '*'.repeat(5 - str.length);
  console.log(str)
};

String.prototype.repeat 是 ES6,所以对于古老的浏览器要么使用 polyfill,要么使用不同的方法,比如 new Array(6).join('*');

你可以再增加一个循环,在循环后添加'*'来打印数字

var num = 5;

for(var i = 1 ; i <= num ; i++){
  var str = "";
  for(var j = 1 ; j <= i ; j++){
    str += j
  };
  for(var k = j; k <= num; k++) {
   str += '*'
  }
  console.log(str)
};

或者您可以在 for 循环中使用条件并让内部 for 从 1 迭代到 num

var num = 5;

for(var i = 1 ; i <= num ; i++){
  var str = "";
  for(var j = 1 ; j <= num ; j++){
    str += j <= i ? j : '*'
  };
  console.log(str)
};