Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
Chrome 130
Windows
Desktop
5 months ago
Test name Executions per second
Nested Loops 29406.9 Ops/sec
Recursion 27275.0 Ops/sec
Tests:
  • Nested Loops

    x
     
    function steps(n) {
      for (let row = 0; row < n; row++) {
        let stair = "";
        for (let column = 0; column < n; column++) {
          if (column <= row) {
            stair += "#";
          } else {
            stair += " ";
          }
        }
        console.log(stair);
      }
    }
    steps(4)
  • Recursion

     
    function steps2(n, row = 0, stair = "") {
      if (n === row) {
        return;
      }
      if (n === stair.length) {
        console.log(stair);
        steps2(n, row + 1);
        return;
      }
      if (stair.length <= row) {
        stair += "#";
      } else {
        stair += " ";
      }
      steps2(n, row, stair);
    }
    steps2(4)