HOWTO · JavaScript

在 JavaScript 中格式化小數

本文將幫助你瞭解如何使用 JavaScript 格式化小數。

本頁內容

本文將研究如何使用 JavaScript 格式化小數位數。

要在 JavaScript 中用逗號和小數位格式化數字,我們可以使用 Math.round()split() 到指定的數字。我們可以使用 toFixed()toString()toLocaleString() 方法來格式化十進位制數。

使用 toString() 方法在 JavaScript 中格式化小數

JavaScript 的 toString() 方法將數字轉換為字串並返回表示指定 Number 物件的字串。

<!DOCTYPE html>
<html>
  <body>
    <script>
      var numb = 45342.764;

      var valu = Math.round(Number(numb) * 100) / 100;

      var pts = valu.toString().split(".");

      var num =
        pts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",") +
        (pts[1] ? "." + pts[1] : "");

      console.log(num);
    </script>
  </body>
</html>

執行程式碼

.split() 函式將特定位置的字串片段轉換為陣列元件,然後將其合併回以逗號分隔的系列。

輸出:

"45,342.76"

你甚至可以通過建立一個函式來使用 toString() 方法。

 <script>
    var numb = 45342.76;
    function numbCommas(x) {
      return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
    }
    console.log(numbCommas(numb));
 </script>

執行程式碼

輸出:

"45,342.76"

使用 toFixed() 方法在 JavaScript 中格式化小數

JavaScript 中的 toFixed() 方法格式化一個帶兩位小數的數字。toFixed() 方法使用小數點右側的指定位數格式化數字。

它輸出具有正確小數位數但不使用科學記數法的數字的字串表示形式。

<script>
  var number1 = 45342.764; document.write("number1 is : " + number1.toFixed(2));
  document.write("
  <br /> ");
</script>

執行程式碼

輸出:

number1 is: 45342.76

使用 toLocaleString() 方法在 JavaScript 中格式化小數

同樣,我們可以使用 toLocaleString() 方法用逗號分隔十進位制數,這對於不同的地方是不同的。就像 en-US 在每 3 個位置用逗號分隔數字,而 hi-IN 在前 3 個位置分隔,然後在每 2 個位置分隔。

let decNum = 4534289.764;

console.log(decNum.toLocaleString('en-US'));

console.log(decNum.toLocaleString('hi-IN'));

執行程式碼

輸出:

"4,534,289.764"
"45,34,289.764"