Performance API

by Jason Butz

JavaScript

function perfMark(name) {
	performance && performance.mark && performance.mark(name);
}

performance.mark('start Task1');
var sum = 0;
for(var i = 0; i < 5000; i++) {
	sum += sum * i;
}
performance.mark('end Task1');
performance.measure("Task1", "start Task1", "end Task1");

performance.mark('start Task2');
sum = 0;
for(var i = 0; i < 500000; i++) {
	sum += sum * i;
}
performance.mark('end Task2');
performance.measure("Task2", "start Task2", "end Task2");

performance.mark('start Task3');
sum = 0;
for(var i = 0; i < 500000; i++) {
	sum += i;
}
performance.mark('end Task3');
performance.measure("Task3", "start Task3", "end Task3");

let perfMeasures = performance.getEntriesByType("measure");
perfMeasures.forEach((m) => {
	let el = document.createElement('pre');
  el.innerText = `${m.name} - ${m.duration}ms`;
	document.body.append(el);
});