编程技术文章分享与教程

网站首页 > 技术文章 正文

JavaScript,Math函数,小数,四舍五入,强制进位(ROUND_UP)

hmc789 2024-11-09 13:06:28 技术文章 2 ℃

Math函数

Math用于执行数学任务,提供了大量的数学运算的方法。

实现四舍五入

1、Math.round(number),整数四舍五入。

2、number.toFixed(2),number四舍五入保留2位小数。

四舍五入(ROUND_HALF_UP)及强制进位(ROUND_UP)

四舍五入(ROUND_HALF_UP)

/**
 *四舍五入==>decimalNumber,decimalBits(保留小数位)
  */
function ROUND_HALF_UP(decimalNumber,decimalBits){
  return Math.round(decimalNumber*(Math.pow(10, decimalBits)))/(Math.pow(10, decimalBits));
}

强制进位(ROUND_UP)

/**
 * 强制进位==>decimalNumber,decimalBits(保留小数位)
 */
function ROUND_UP(decimalNumber,decimalBits){
  return Math.ceil(decimalNumber*(Math.pow(10, decimalBits)))/(Math.pow(10, decimalBits));
}

参考:BigDecimal,ROUND_UP的进位制,商品单位的价格换算工具

案例代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>JavaScript,Math函数,四舍五入,强制进位(ROUND_UP)</title>
</head>
<body>
  <div id="app"></div>
  <script >
    // 四舍五入
    let a = Math.round(2.60);
    console.log("a=",a); // 3
    let b = Math.round(2.50); 
    console.log("b=",b); // 3
    let c = Math.round(2.49);
    console.log("c=",c); // 2
    let d = Math.round(-2.60);
    console.log("d=",d); // -3
    let e = Math.round(-2.50);
    console.log("e=",e); // -2
    let f = Math.round(-2.49);
    console.log("f=",f); // -2
    // 四舍五入-->保留两位小数
    let num1 =2.446123654;
    num1 = num1.toFixed(2); 
    console.log("num1=",num1); // 2.45
    let num2 =2.440012212;
    num2 = num2.toFixed(2); 
    console.log("num2=",num2); // 2.44
    // 四舍五入-->保留两位小数
    let num3 =2.446123654;
    let num4 =2.440012212;
    console.log("num3=", ROUND_HALF_UP(num3, 2)); // 2.45
    console.log("num4=", ROUND_HALF_UP(num4, 2)); // 2.45
    Math.round(num2*(10*2))
    /**
     *四舍五入==>decimalNumber,decimalBits(保留小数位)
     */
    function ROUND_HALF_UP(decimalNumber,decimalBits){
      return Math.round(decimalNumber*(Math.pow(10, decimalBits)))/(Math.pow(10, decimalBits));
    }

    // JavaScript-->强制进位
    let num5 =2.446123654;
    let num6 =2.440012212;
    console.log("num5=", ROUND_UP(num5, 2)); // 2.45
    console.log("num6=", ROUND_UP(num6, 2)); // 2.45
    /**
     * 强制进位==>decimalNumber,decimalBits(保留小数位)
     */
    function ROUND_UP(decimalNumber,decimalBits){
      return Math.ceil(decimalNumber*(Math.pow(10, decimalBits)))/(Math.pow(10, decimalBits));
    }
  </script>
</body>
</html>

Tags:

标签列表
最新留言