js 保留两位小数点,js保留两位整数,js保留两位小数方法总结

js 保留两位小数点,js保留两位整数,js保留两位小数方法总结

本文总结了js中保留两位小数的各种方法,并给出了每种方法的示例代码分析。如果需要这个,我们来学习一下js中保留两位小数的方法。

本文是边肖为js保留两位小数编写的函数在各种情况下的写法和遇到问题的分析,这是我们经常遇到的经典问题。以下是全部内容:

一、我们首先从经典的“四舍五入”算法讲起

1、四舍五入的情况

var num=2.446242342

num=num . to fixed(2);//输出结果是2.45

2、不四舍五入

首先,把小数放在整数边:

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

第二,作为字符串,使用常规匹配:

编号(15.7784514000.toString()。match(/^\d(?\.\d{0,2})?/)//输出结果为15.77,不能用于10等整数。必须写成10.0000。

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

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

//四舍五入,保留2位小数(如果第二位小数为0,保留1位小数)

函数keepTwoDecimal(num) {

var result=parse float(num);

if (isNaN(result)) {

Alert('参数传递错误,请检查!');

返回false

}

结果=math . round(num * 100)/100;

返回结果;

}

//四舍五入保留2位小数(如果位数不够,用0代替)

函数keepTwoDecimalFull(num) {

var result=parse float(num);

if (isNaN(result)) {

Alert('参数传递错误,请检查!');

返回false

}

结果=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”;

}

返回s _ x;

}

如果想对javascript有一个系统深入的学习,可以参考经典著作《JavaScript启示录》PDF原著完整版。

二、Js取float型小数点后两位数的方法

脚本类型='文本/javascript '

//保留两位小数

//函数:将浮点数四舍五入到小数点后两位。

函数到Decimal(x) {

var f=parse float(x);

if (isNaN(f)) {

返回;

}

f=math . round(x * 100)/100;

返回f;

}

//保留2位小数,比如:2,后面会跟00。也就是2.00。

函数到Decimal2(x) {

var f=parse float(x);

if (isNaN(f)) {

返回false

}

var f=math . round(x * 100)/100;

var s=f . tostring();

var rs=s.indexOf(' . ');

如果(0卢比){

rs=s .长度;

s=' . ';

}

while (s.length=rs 2) {

s=“0”;

}

返回s;

}

函数fomatFloat(src,pos){

return math . round(src * math . pow(10,pos))/Math.pow(10,pos);

}

//四舍五入

Alert('保留两位小数:' to decimal(3.14159267));

Alert('强制保留两位小数:' to decimal 2(3.14159267));

Alert('保留两位小数:' to decimal(3.14559267));

Alert('强制保留两位小数:' to decimal 2(3.15159267));

Alert('保留2位小数:' fomatFloat(3.14559267,2));

Alert('保留1位小数:' fomatFloat(3.15159267,1));

//五家六口收入

Alert('保留两位小数:' 1000.003 . to fixed(2));

Alert('保留1位小数:' 1000.08 . to fixed(1));

Alert('保留1位小数:' 1000.04 . to fixed(1));

Alert('保留1位小数:' 1000.05 . to fixed(1));

//科学计数

alert(3.1415 . to exponential(2));

alert(3.1455 . to exponential(2));

alert(3.1445 . to exponential(2));

alert(3.1465 . to exponential(2));

alert(3.1665 . to exponential(1));

//精确到n位,不包括n位

Alert('精确到小数点后第二位' 3.1415 . to precision(2));

Alert('精确到小数点后第三位' 3.1465 . to precision(3));

Alert('精确到小数点后第二位' 3.1415 . to precision(2));

Alert('精确到小数点后第二位' 3.1455 . to precision(2));

Alert('精确到小数点后第5位' 3.141592679287 . to precision(5));

/脚本

用Javascript取float类型的两位小数,比如22.127456取为22.13。怎么做?

1.舍弃小数部分,保留整数部分。

parseInt(5/2)

2.向上取整,如果有小数,整数部分加1。

数学.细胞(5/2)

3、四舍五入。

数学. round(5/2)

4、向下舍入

数学.地板(5/2)

替代方法

1.最笨的方法

函数get()

{

var s=22.127456“”;

var str=s.substring(0,s.indexOf(' . ')) 3);

alert(str);

}

2.正则表达式工作良好。

脚本类型='文本/javascript '

onload=function(){

var a=' 23.456322

var重新;

var re=/([0-9]。[0-9]{2})[0-9]*/;

aNew=a.replace(re,' $ 1 ');

警惕(从新);

}

/脚本

3.他更聪明。

脚本

var num=22.127456

alert(math . round(num * 100)/100);

/脚本

4.能使用新事物的朋友.但是需要IE5.5来支持它们。

5.js保留两位小数(必填)

对于小数点后2位以上的,使用上面的函数就可以了,但是对于小数点后2位以下的,比如:changtwodecimal(3.1),就会返回3.1。如果您必须需要像3.10这样的格式,那么您需要以下函数:

函数changtwodecimal _ f(x){

var f _ x=parse float(x);

if (isNaN(f_x)) {

alert(' function:changtwodecimal-参数错误');

返回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”;

}

返回s _ x;

}

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

函数returnFloat(value){

var值=math . round(parse float(value)* 100)/100;

var xsd=value.toString()。拆分('.');

if(xsd.length==1){

value=value . tostring(). 00 ';

返回值;

}

if(xsd.length1){

if(xsd[1].length2){

value=value . tostring()“0”;

}

返回值;

}

}

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

Js整数,js绝对值,JS舍入(可保留两位小数)功能如下:

脚本语言=javascript

!-

函数jsMath()

{

document . write(math . floor(5.80)' br ');//舍入或向下舍入

document . write(math . round(5.80)“br”);//四舍五入,取整数

document . write(math . round((5.80 * 100)/100)“br”);//四舍五入,保留两位小数

document . write(math . ceil(5.10)“br”);//向上舍入

document . write(math . ABS(-5.80)' br ');//取绝对值

document.write(Math.max(55,58)' br ');//返回两个值的最大数量

document.write(Math.min(55,58)' br ');//返回两个值中最小的一个

}

-

/脚本

差异

script jsmath();/脚本

/div

总结

web前端开发中经常会遇到JS数据格式化,尤其是数据类型为Float时,需要特殊处理,比如保留两位小数,小数点后的数据是否需要四舍五入等等。下面介绍几种实现数据格式化并保留两位小数的方法。

1.JS自己的方法toFixed()。toFixed()方法可以将数字舍入到指定小数位数的数字。

语法: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异常。

脚本类型="文本/javascript "

var num=新号码(13.376954);

document.write (num.toFixed(2))

/脚本

产量:13.38

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

函数round fun (number round,round digit){//取整,保留位数为四舍五入位数。

if (numberRound=0){

var temp number=parse int((number round * math . pow(10,roundDigit) 0.5))/Math.pow(10,round digit);

返回tempNumber

}否则{

number round 1=-number round;

var temp number=parse int((number round 1 * math . pow(10,roundDigit) 0.5))/Math.pow(10,round digit);

return-tempNumber;

}

}

然后调用roundFun()函数。如roundFun('13.376954 ',2);当然,返回的结果与第一种方法相同。

3.用函数截取小数点。当然,这种方法没有四舍五入。

脚本类型="文本/javascript "

tmp=13.376954”

result=tmp.substr(0,tmp.indexOf(" . ") 2);

警报(结果);

/脚本

以上是边肖为大家整理的js保留小数点后两位的方法总结。谢谢你的支持。如果你对js保留两位小数的方法还有什么不明白的,可以在下面的留言区讨论。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: