Javascript memory leak

by goranobradovic

JavaScript

function leakMemory(leakHere) {

  for (var i = 0; i < 400; i++) {
    var subleak = new Array();
    for (var j = 0; j < 1000; j++) {
      var subarray = generateArrayOfRand();
      subleak.push(subarray);
    }
    addSomePic();
    leakHere.push(subleak);
  }
}

function generateArrayOfRand() {
  var subarray = [];
  for (var j = 0; j < 1000; j++) {
    subarray.push(Math.random());
  }
  return subarray;
}
function addSomePic(){
  	var img = new Image();
    var w = 100 + Math.ceil(Math.random() * 200);
    var h = 100 + Math.ceil(Math.random() * 200);
    img.src = 'https://unsplash.it/' + w + '/' + h +'?random';
    document.body.appendChild(img);
}
document.leak = new Array();
leakMemory(document.leak);