Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
</body>
</html>
 
(function() {
  function topUpTo(a, l, v) {
    for (var n = a.length; n < l; ++n) {
      a[n] = v;
    }
    return a;
  }
  
  function log(msg) {
    var p = document.createElement("p");
    p.appendChild(document.createTextNode(msg));
    document.body.appendChild(p);
  }
  
  var count = 100000;
  var step = 10000;
  var source = [];
  var loops = 0;
  function batch() {
    var dest;
    var max = loops + 1000;
    while (loops++ < max) {
      dest = [];
      topUpTo(source, count, null);
      try {
        dest.push.apply(dest, source);
        if (dest.length !== source.length) {
          throw new Error("invalid lengths, dest.length = " + dest.length + ", source.length = " + source.length);
        }
      } catch (e) {
        log("Got exception: " + (e.message || e.toString()));
        log("Broke at " + count + " entries");
        return false;
      }
      count += step;
    }
    return true;
  }
  function test() {
    if (batch()) {
      next();
    }
  }
  function next() {
    log("Loops: " + loops);
    setTimeout(test, 0);
  }
  
  next();
  
})();
Output

This bin was created anonymously and its free preview time has expired (learn why). — Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers