JSFiddle - React, Tailwind, and code Playground

by wolfpackt99

HTML

<ul id='log'></ul>

JavaScript

function bankerRound(num, decimalPlaces) {
    var d = decimalPlaces || 2;
    var m = Math.pow(10, d);
    var n = +(d ? num * m : num).toFixed(8); // Avoid rounding errors
    var i = Math.floor(n), f = n - i;
    var e = 1e-8; // Allow for rounding errors in f
    var r = (f > 0.5 - e && f < 0.5 + e) ?
                ((i % 2 == 0) ? i : i + 1) : Math.round(n);
    return d ? r / m : r;
}

function log(item)
{
    $("#log").append("<li>" + item + "</li>");
}

log( bankerRound(.7*.75) );
log( bankerRound(1.5*1.99) );
log( bankerRound(.57*1.64) );
log( bankerRound(.57*1.94) );
log( bankerRound(.68*1.64) );
log( bankerRound(.68*1.99) );
log( bankerRound(1.5) );
log( bankerRound(.68*1.99) );