js保留两位小数方法总结_javascript技巧

文章编号:1034 技术教程 2026-02-04 js保留两位小数

var num =2.446242342;num = num.toFixed(2); // 输出结果为 2.45

2、不四舍五入

第一种,先把小数边整数:

Math.floor(15.7784514000 * 100) / 100 // 输出结果为 15.77

第二种,当作字符串,使用正则匹配:

Number(15.7784514000.toString().match(/^\d+(?:\.\d{0,2})?/)) // 输出结果为 15.77,不能用于整数如 10 必须写为10.0000

注意:如果是负数,请先转换为正数再计算,最后转回负数

分享一个经典的解决四舍五入问题后js保留两位小数的方法:

//四舍五入保留2位小数(若第二位小数为0,则保留一位小数)function keepTwoDecimal(num) { var result = parseFloat(num); if (isNaN(result)) { alert('传递参数错误,请检查!'); return false; } result = Math.round(num * 100) / 100; return result;}//四舍五入保留2位小数(不够位数,则用0替补)function keepTwoDecimalFull(num) { var result = parseFloat(num); if (isNaN(result)) { alert('传递参数错误,请检查!'); return false; } result = Math.round(num * 100) / 100; var s_x = result.toString(); var pos_decimal = s_x.indexOf('.'); if (pos_decimal < 0) { pos_decimal = s_x.length; s_x += '.'; } while (s_x.length <= pos_decimal + 2) { s_x += '0'; } return s_x;}

如果大家想对javascript有系统深入的学习,可以参阅 这本经典书籍

用Javascript取float型小数点后两位,例22.127456取成22.13,如何做?

1.丢弃小数部分,保留整数部分

parseInt(5/2)

2.向上取整,有小数就整数部分加1

function get(){ var s = 22.127456 + ""; var str = s.substring(0,s.indexOf(".") + 3); alert(str);}

2. 正则表达式效果不错

4.会用新鲜东西的朋友....... 但是需要 IE5.5+才支持

对于小数点位数大于2位的,用上面的函数没问题,但是如果小于2位的,比如:changeTwoDecimal(3.1),将返回3.1,如果你一定需要3.10这样的格式,那么需要下面的这个函数:

function changeTwoDecimal_f(x) { var f_x = parseFloat(x); if (isNaN(f_x)) { alert('function:changeTwoDecimal->parameter error'); return false; } var f_x = Math.round(x * 100) / 100; var s_x = f_x.toString(); var pos_decimal = s_x.indexOf('.'); if (pos_decimal < 0) { pos_decimal = s_x.length; s_x += '.'; } while (s_x.length <= pos_decimal + 2) { s_x += '0'; } return s_x;}

三、js保留两位小数,自动补充零

function returnFloat(value){ var value=Math.round(parseFloat(value)*100)/100; var xsd=value.toString().split("."); 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; }}

四、JS取整数,js取绝对值,js四舍五入(可保留两位小数)

JS取整数,js取绝对值,js四舍五入(可保留两位小数)函数如下:

总结

JS数据格式化是在进行web前端开发时常碰到的事情,特别是在数据类型为Float的数据就需要特殊处理,如保留两位小数、小数点后的数据是否需要四舍五入等等。下面就来介绍实现数据格式化保留两位小数的多种方法。

1、JS自带的方法toFixed(),toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

语法:NumberObject.toFixed(num),mun是必需的参数,即规定小数的位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替,所以toFixed() 方法可以实现保留2位、3位、4位等等,取决于num的数值。

返回值:返回 NumberObject 的字符串表示,不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0 补足,以便它达到指定的长度。如果 num 大于 le+21,则该方法只调用 NumberObject.toString(),返回采用指数计数法表示的字符串。

当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。

当调用该方法的对象不是 Number 时抛出 TypeError 异常。

输出:13.38

2、自定义函数实现小数保留并四舍五入。

function roundFun(numberRound,roundDigit) { //四舍五入,保留位数为roundDigitif (numberRound>=0){var tempNumber = parseInt((numberRound * Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit);return tempNumber;} else{numberRound1=-numberRound;var tempNumber = parseInt((numberRound1 * Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit);return -tempNumber;}}

然后调用roundFun()这个函数就可以了。如roundFun('13.376954′,2);当然返回的结果跟第一种方法是一样的。

3、通过函数截取,截取到小数点后面第几位,当然这种方法就没有四舍五入了。

以上就是小编为大家整理的关于js保留两位小数方法的总结内容,感谢你的支持,如果你对js保留两位小数方法还有任何不明白的地方,可以在下方的留言区讨论。


本文地址: https://www.earthnavs.com/jishuwz/dded469ed623e37220ed.html
全局中部横幅
链接99自动秒收录(lianjie99.cn)

链接99自动秒收录是一个各类信息免费发布的网站,可以发布外链交换,行业分类资讯信息,免费软文发布提交正规网址帮你进行快速收录同时支持网址自动收录.

流星导航系统

流星导航网,免费收录,致力于简洁高效的上网导航和搜索入口,沉淀最具价值链接,全站无商业推广,简约而不简单。

菜鸟教程

菜鸟教程(www.runoob.com)提供了编程的基础技术教程,介绍了HTML、CSS、Javascript、Python,Java,Ruby,C,PHP,MySQL等各种编程语言的基础知识。同时本站中也提供了大量的在线实例,通过实例,您可以更好的学习编程。..

MAKE

聚合全网最新最热门资讯

西瓜数据

西瓜数据提供新媒体流量监测及精准营销服务,以数据为依托,为品牌主营销洞察提供支持,提高投放效率,降低投放成本,助力品牌实现营销新目标。

中国网

国家重点新闻网站,拥有十个语种独立新闻采编、报道和发布权;第一时间报道国家重大新闻事件;国情信息库服务全球读者了解中国;国务院新闻办公室发布会独家网络直播发布网站;拥有国内外顶级学者专家资源,独家编发各种相关政策解读。

阿里邮箱

阿里邮箱是业内唯一基于云计算原生公有云服务的邮件运营商,阿里企业邮箱为企业用户提供高安全、高性能、高稳定的邮件企业服务,海外多点部署,全球畅邮

大厂图床

该站点未添加描述description...

79收录网

79收录网系统是一个专业收录优质网站的网址导航平台,提供简洁高效的网络入口。免费提交收录,发现实用工具、设计资源、程序员必备站,打造您的专属上网主页