Assuming you want String outputs
function myFixed(x, d) {
if (!d) return x.toFixed(d); // don't go wrong if no decimal
return x.toFixed(d).replace(/\.?0+$/, '');
}
myFixed(1.0000, 2); // "1"
myFixed(1.1000, 2); // "1.1"
myFixed(1.1200, 2); // "1.12"
myFixed(1.1230, 2); // "1.12"