js中小数运算(加、减、乘、除)的问题及一些数学函数

js中小数运算(加、减、乘、除)的问题及一些数学函数

    乘法例子:

    var  sl = 6 ;

    var  dj = 5.5555 ;

    if(sl.value!="" && dj.value!=""){
      alert("1==="+(sl.value*dj.value) );                      //值为:76.988999999999
      alert("2==="+(sl.value*(dj.value*100))/100);      //值为: 76.988999999999
      //保留两位小数     

      alert("3==="+(sl.value*dj.value).toFixed(2));      //值为:76.99      
      sumMoney.value=(sl.value*dj.value).toFixed(2));
    } 

    使用Number.toFixed()可以格式数字显示任意的小数位!

 

var time=2.4/0.8;没处理的结果是:2.99999999995 一个double类型

解决方案是:2.4 * 100 / (0.8 * 100) ;temp为一只有两位小数的变量,通过先将他们装换成整数在进行相除,就可以了,两个小数之间取模也是这种解决办法:temp * 100 % (0.8 * 100);

parseFloat(temp.toFixed(2).toString()); //取该变量小数点后两位小数,并将其转换成Float类型

Math.floor(temp); //仅仅取这个变量的整数部分 Math.floor(3.4444);=》3Math.floor(3.9999);=》3

保留小数点后几位小数的方法:

1、temp.toFixed(2);//取该变量小数点后两位小数

2、xx=0.02018

如果是保留3位小数

alert(Math.round(parseFloat(xx)*1000)/1000)

保留4位小数

alert(Math.round(parseFloat(xx)*10000)/10000)(JavaScript中round函数方法是归回与给出的数值抒发式最接近的整数。使用方法: Math.round(number) ;其中number是要舍入到最接近整数的值。

number 的小数部分大于等于 0.5,归回值是大于 number 的最小整数。否则,round 归回小于等于 number 的最大整数。)

三、注:
还有一些要说的是我们可以先将这些个数转换成字符串类型,在通过split(以什么字符支解字符串成数组)方法,将字符串支解成数组,取数组下标;

两个小数相减:
javascript:document.write(11.3-10.1)会显示1.200000000000001

解决方案:
javascript:document.write(paresFloat(11.3-10.1));

这个和数据结构有瓜葛

整数型自己主动转换成正型计算

小数型直接转成double型计算

这是在内存中运算的时候必须这样

你该知道计算机只认识0和1吧

具体的就是浮点精准度的不懂的题目

float 精确到小数点后7位
double 精确到小数点后15位

在Javascript中,数学方法可以分成以下几类:

constans(常数)、power functions(乘方函数)、trigonometic functions(三角函数)、rounding functions(舍入函数)、random numbers(随机数字)


常数和乘方函数

Math.E 自然对数的底(为常数) 2.718
Math.LN10 10的自然对数 2.302
Math.LN2 2的自然对数 0.693
Math.PI 圆周率 3.1415
Math.SQRT1_2 1/2的平方根 0.707
Math.SQRT2 2的平方根 1.414
Math.sqrt(x) X的平方根 更X的值有关
Math.pow(x, n) 归回x的n次方的数值 参数为x和n
Math.log(n) 归回n的自然对数 参数为n
Math.exp(n) 归回e的n次方的数值 参数为n

三角函数

Math.cos(x) X的余弦函数
Math.sin(x) X的正弦函数
Math.tan(x) X的正切函数
Math.acos(y) X的反余弦函数
Math.asin(y) X的反正弦函数
Math.atan(y) X的反正切函数
这里注意:参数x和以及反函数的归回数值的单位都为弧度(比如 PI弧度=180度)

舍入函数和随机数字

Math.random() 孕育发生从0到1的随机数

Math.round(x) 取最接近整数x的数值

Math.floor(x) 取最接近整数x并且比x小的数值

Math.ceil(x) 取最接近整数x并且比x大的数值

Math.min(a, b, c) 归回参数据排列表中最小的数值

Math.max(a, b, c) 归回参数据排列表中最大的数值

 

 

你可能感兴趣的:(前端_JavaScript,2017前-开发整理)