Speed Test
by polaszk
JavaScript
function SpeedTest(testImplement, testParams, repetitions) {
this.testImplement = testImplement;
this.testParams = testParams;
this.repetitions = repetitions || 10000;
this.average = 0;
}
SpeedTest.prototype = {
startTest: function () {
var beginTime, endTime, sumTimes = 0;
for (var i = 0, x = this.repetitions; i < x; i++) {
beginTime = +new Date();
this.testImplement(this.testParams);
endTime = +new Date();
sumTimes += endTime - beginTime;
}
this.average = sumTimes / this.repetitions;
return console.log("Average execution across " + this.repetitions + ": " + this.average);
}
};
var IP = ['Nipping Global Variable', 'Sneaky Forin', 'Bulging Blocking Script'],
GH = ['Switch Blocks', 'Pesky Gnat', 'Aiedra'],
inhabitants = [IP,GH];
function populationGetter(popn) {
var list = '';
for (var i = 0, x = popn.length; i < x; i++) {
for (var j = 0; j < popn[i].length; j++) {
list += (popn[i][j] + ', ');
}
}
return list;
}
populationGetter(inhabitants);
var SpeedTest = new SpeedTest(populationGetter, inhabitants, 100000);
SpeedTest.startTest();