ein
Version:
Easy way to deal with decimals
39 lines (35 loc) • 917 B
JavaScript
var binds = {
"floor": function (digits) {
var den = Math.pow(10, digits == null ? 0 : digits);
return Math.floor(this * den) / den;
},
"round": function (digits) {
var den = Math.pow(10, digits == null ? 0 : digits);
return Math.round(this * den) / den;
},
"ceil": function (digits) {
var den = Math.pow(10, digits == null ? 0 : digits);
return Math.ceil(this * den) / den;
},
"ein": function () {
var args = [];
for (var i = 1; i < arguments.length; i++) {
args.push(arguments[i]);
}
return userBinds[arguments[0]].apply(this, args);
}
};
for (var name in binds) {
if (Number.prototype[name]) {
console.warn("`name` already defined in `Number.prototype`");
}
else {
Number.prototype[name] = binds[name];
}
}
var userBinds = {};
module.exports = function (binds) {
for (var name in binds) {
userBinds[name] = binds[name];
}
};