这篇文章主要介绍了javascript实现保留两位小数的多种不同效果,如果数字的原本小数位数不到两位,那么缺少的就自动补零,非常适用于商城类网站,感兴趣的小伙伴们可以参考一下。一般可以用作全局方法调用。
(function (window) {
// 将小数点清零
var toInteger = function (value) {
value = Math.round(parseFloat(value));
return value;
};
// 保留一位小数点
var toDecimal = function (value) {
value = Math.round(parseFloat(value) * 10) / 10;
if (value.toString().indexOf(".") < 0) {
value = value.toString() + ".0";
}
return value;
}
// 保留两位小数点
var toFloat = function (value) {
value = Math.round(parseFloat(value) * 100) / 100;
if (value.toString().indexOf(".") < 0) {
value = value.toString() + ".00";
}
return value;
}
// 保留两位小数点,一位小数自动补零
var toZero = function (value) {
value = Math.round(parseFloat(value) * 100) / 100;
var xsd = value.toString().split(".");
//Ext.log(xsd.length);
if (xsd.length == 1) {
value = value.toString() + ".00";
return value;
}
if (xsd.length > 1) {
if (xsd[1].length < 2) {
value = value.toString() + "0";
}
return value;
}
}
window.fomatFloat = {
toInteger: toInteger,
toDecimal: toDecimal,
toFloat: toFloat,
toZero: toZero,
};
})(window);
使用方式:
console.log(fomatFloat.toInteger(1234.45678));
console.log(fomatFloat.toDecimal(1234.45678));
console.log(fomatFloat.toFloat(1234.45678));
console.log(fomatFloat.toZero(1234.45678));
console.log(fomatFloat.toZero(1234.1));
console.log(fomatFloat.toZero(1234));
运行结果:
本文内容均属个人原创作品,转载此文章须附上出处及原文链接。
加关注,定时推送,互动精彩多,若你有更好的见解,欢迎留言探讨!