JSFiddle - React, Tailwind, and code Playground
by John Schulz
HTML
<ol id="output"></ol>
CSS
dt { font-weight: bold; }
dt, dd { display: inline; }
JavaScript
var out = document.getElementById('output'), runs = {}, counter, max = 999999999, useless;
for (var run=-1; ++run < 5;){
runs.with_post = {start: null, end: null, time: null };
runs.with_post.start = new Date();
for (counter = 0; counter < max; counter++){ useless = true; }
runs.with_post.end = new Date();
runs.without_post = {start: null, end: null, time: null };
runs.without_post.start = new Date();
for (counter = -1; ++counter < max;){ useless = true; }
runs.without_post.end = new Date();
runs.with_post.time = runs.with_post.end - runs.with_post.start;
runs.without_post.time = runs.without_post.end - runs.without_post.start;
var pct = runs.without_post.time / runs.with_post.time;
var diff = runs.with_post.time - runs.without_post.time;
out.innerHTML += [
'<li><dl>',
'<dt>with</dt>', '<dd>', runs.with_post.time, '</dd>',
'<dt>without</dt>', '<dd>', runs.without_post.time, '</dd>',
'<dt>% diff</dt>', '<dd>', (diff).toFixed(2), '</dd>',
'<dt>pct</dt>', '<dd>', (1-pct).toFixed(4)*100, '</dd>',
'<dt>diff per run</dt>', '<dd>', diff / max, '</dd>',
'</dl></li>'
].join(' ');
}