JS 保留两位小数 & JS Math对象
一、“四舍五入”算法
1. 四舍五入的情况
var num =4.2167456;
num = num.toFixed(2); // 输出结果为 4.22
var num =4.2167456;
num = Math.round(num * 100) / 100; // 输出结果为 4.22
var num =4.2007456;
num = Math.round(num * 100) / 100; // 输出结果为 4.2
2. 不四舍五入的情况
var num =4.2167456;
num = Math.floor(num * 100) / 100; // 输出结果为 4.21
var num =4.2167456;
num = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/)); // 输出结果为 4.21
//注意:如果是负数,请先转换为正数再计算,最后转回负数
二、js Math对象方法
Math 对象
Math 对象用于执行数学任务。
注释:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。
Math 对象方法
方法 | 描述 |
---|---|
abs(x) | 返回数的绝对值。 |
acos(x) | 返回数的反余弦值。 |
asin(x) | 返回数的反正弦值。 |
atan(x) | 以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。 |
atan2(y,x) | 返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。 |
ceil(x) | 对数进行上舍入。 |
cos(x) | 返回数的余弦。 |
exp(x) | 返回 e 的指数。 |
floor(x) | 对数进行下舍入。 |
log(x) | 返回数的自然对数(底为e)。 |
max(x,y) | 返回 x 和 y 中的最高值。 |
min(x,y) | 返回 x 和 y 中的最低值。 |
pow(x,y) | 返回 x 的 y 次幂。 |
random() | 返回 0 ~ 1 之间的随机数。 |
round(x) | 把数四舍五入为最接近的整数。 |
sin(x) | 返回数的正弦。 |
sqrt(x) | 返回数的平方根。 |
tan(x) | 返回角的正切。 |
toSource() | 返回该对象的源代码。 |
valueOf() | 返回 Math 对象的原始值。 |
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsMath</title>
<script type="text/javascript">
document.write("取整或下舍入Math.floor(5.80) ---- " + Math.floor(5.80) + "<br><br>");//取整或下舍入
document.write("四舍五入,取整数MMath.round(5.80) ---- " + Math.round(5.80) + "<br><br>");//四舍五入,取整数
document.write("四舍五入,保留两位小数Math.round((5.80*100)/100) ---- " + Math.round((5.80*100)/100) + "<br><br>");//四舍五入,保留两位小数
document.write("上舍入Math.ceil(5.10) ---- " + Math.ceil(5.10) + "<br><br>");//上舍入
document.write("取绝对值Math.abs(-5.80) ---- " + Math.abs(-5.80) + "<br><br>");//取绝对值
document.write("返回两个值中最大数Math.max(55, 58) ---- " + Math.max(55, 58) + "<br><br>");//返回两个值中最大数
document.write("返回两个值中最小数Math.min(55, 58) ---- " + Math.min(55, 58) + "<br><br>");//返回两个值中最小数
</script>
</head>
<body>
</body>
</html>