//from https://stackoverflow.com/a/49080858 function bankersRound(n, d=2) { var x = n * Math.pow(10, d); var r = Math.round(x); var br = Math.abs(x) % 1 === 0.5 ? (r % 2 === 0 ? r : r-1) : r; return br / Math.pow(10, d); } //this function divides obj.valuekey by totalamt, putting the result rounded to two positions in obj.resultkeyname. export default async function(obj, valuekeyname, resultkeyname, totalamt) { obj[resultkeyname] = bankersRound(obj[valuekeyname] / 100 * parseFloat(totalamt)); return obj; }