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
全局中部横幅
站长收录网

站长目录,是一个流量互增的自动外链平台,可以给你网站增加反向链接,加快百度收录,是您迅速提升网站流量的网络推广必备工具。

伍陆柒导航网

伍陆柒导航网提供网址分类目录,技术教程导航和网站目录提交,分享源码资源,网址导航,自动秒收录为你提升流量,免费外链发布。

MAKE

聚合全网最新最热门资讯

AnyKnew

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

FeedEx.Net:

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

行行查

行行查是专业行业研究数据库,包含海量细分行业研究报告,研究信息覆盖大消费、节能环保、传媒娱乐、信息科技、地产金融、生命健康、先进制造、传统行业等领域;行行查机器人自动对接多渠道权威数据源,覆盖海量行业研究数据,基于已建模型,机器人自动在数据生产平台完成数据清洗和数据转换,并实现精准标签及全流程可视化。

专业的云计算

作为云计算技术的专业服务提供商,中国公云(3322)为数百万用户提供内网域名、智能域名、动态域名等基础信息服务。

海外服务器租用

天下数据成立于2003年,已与全球120多个国家顶级机房达成战略合作关系,提供香港服务器租用、美国服务器租用、SD-WAN专线加速、高防CDN节点、DDos高防ip、站群服务器、高防服务器、韩国服务器、新加坡服务器等租用解决方案服务。

SugarHosts

Sugarhosts以超值的价格提供品质卓越的美国、欧洲、亚洲主机服务,同时提供一百种域名与数十种SSL安全证书

易航收录网

易航导航收录网,致力于为站长提供一站式的网站快速收录服务。我们专注于高效、自动化的收录流程,确保您的网站能够在百度、搜狗、360等主流搜索引擎中迅速获得索引。同时,我们提供友情链接交换平台,帮助站长提升网站权重,优化SEO效果。加入易航收录网,让您的网站曝光更快,流量更高!