[JST] Pseudo parallelism

HTML

<button id=startCalculation>Start calculation</button>
<div id=results></div>

JavaScript

function appendResult(result) {
  var div = document.createElement('div');
  div.innerText = result;
  results.appendChild(div);
}

function calculatePi(pi, n) {
  for (;; n += 4) {
    pi = pi + (4 / n) - (4 / (n + 2));

    if ((n - 1) % 20000000 == 0) {
      appendResult(pi);
      setTimeout(function() {
        calculatePi(pi, n + 4);
      });
      return;
    }
  }
}

startCalculation.onclick = function() {
  calculatePi(0, 1);
}