1. 程式人生 > >JS 保留兩位小數 & JS Math物件

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>