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(' ');
}