JS如何取兩位小數?

一、toFixed()方法

JS中有一個toFixed()方法可以對數字進行小數保留。該方法的用法如下:

let num = 3.14159265;
num.toFixed(2); // 返回"3.14"

使用toFixed()方法時,需要注意的是,該方法會將數字四捨五入到指定的小數位數,並將其轉換為字符串返回。如果小數位數不足,會在末尾補0。

二、Math.round()方法

Math.round()方法是JS中用於四舍五入的方法,也可以用於小數位數保留。其用法如下:

let num = 3.14159265;
Math.round(num * 100) / 100; // 返回3.14

使用Math.round()方法時,需要先將要保留的小數位數乘以10的對應次冪,然後將該數值作為參數傳入round()方法中。最後將結果除以10的對應次冪即可得到保留小數位數的數字。

三、自定義函數

我們可以編寫自定義函數來實現保留小數位數的功能。例如:

function toFixed(number, precision) {
  let multiplier = Math.pow(10, precision);
  return Math.round(number * multiplier) / multiplier;
}
let num = 3.14159265;
toFixed(num, 2); // 返回3.14

該方法將要保留的小數位數作為參數傳入,使用Math.pow()方法獲取10的對應次冪,並將其作為乘數。然後將數值乘以該乘數並進行四捨五入,最後將結果除以該乘數即可得到保留小數位數的數字。

四、使用parseFloat()方法

JS中的parseFloat()方法可以將字符串轉換為數字,並且會保留小數位數。其用法如下:

let num = "3.14159265";
parseFloat(num).toFixed(2); // 返回"3.14"

該方法將字符串轉換為數字後,再使用toFixed()方法進行小數位數保留。但需要注意的是,如果傳入的字符串中包含非數字字符,則會返回NaN。

五、使用正則表達式

我們可以使用正則表達式來截取小數位數,然後將其進行四捨五入。例如:

function toFixed(number, precision) {
  let regExp = new RegExp(`^-?\\d+(?:\\.\\d{0,${precision}})?`);
  let match = number.toString().match(regExp);
  return Number(match[0]);
}
let num = 3.14159265;
toFixed(num, 2); // 返回3.14

該方法通過正則表達式將數字字符串截取至指定小數位數,並將其轉換為數字。使用match()方法獲取匹配結果,然後取出第一個匹配結果即可得到保留小數位數的數字。

六、小結

JS中保留小數位數是常見需求,我們可以使用toFixed()方法、Math.round()方法、自定義函數、parseFloat()方法或正則表達式來實現該功能。在使用時需要考慮到四捨五入、小數位數不足或過多等情況。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/185586.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-26 12:24
下一篇 2024-11-26 21:06

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • JS圖片沿着SVG路徑移動實現方法

    本文將為大家詳細介紹如何使用JS實現圖片沿着SVG路徑移動的效果,包括路徑製作、路徑效果、以及實現代碼等內容。 一、路徑製作 路徑的製作,我們需要使用到SVG,SVG是可縮放矢量圖…

    編程 2025-04-27
  • 如何使用JS調用Python腳本

    本文將詳細介紹通過JS調用Python腳本的方法,包括使用Node.js、Python shell、child_process等三種方法,以及在Web應用中的應用。 一、使用Nod…

    編程 2025-04-27
  • 如何反混淆美團slider.js

    本文將從多個方面詳細闡述如何反混淆美團slider.js。在開始之前,需要明確的是,混淆是一種保護JavaScript代碼的方法,其目的是使代碼難以理解和修改。因此,在進行反混淆操…

    編程 2025-04-27
  • Python要學JS嗎?

    Python和JavaScript都是非常受歡迎的編程語言。然而,你可能會問,既然我已經學了Python,是不是也需要學一下JS呢?在本文中,我們將圍繞這個問題進行討論,並從多個角…

    編程 2025-04-27
  • 解決js ajax post 419問題

    對於使用ajax post請求時出現的419問題,我們需要進行以下幾個方面的闡述,包括返回碼的含義、可能出現的情況、解決方案等內容。 一、解析419返回碼 419返回碼錶示用戶超時…

    編程 2025-04-27
  • Three.js實現室內模型行走

    在本文中,將介紹如何使用Three.js創建室內模型,並在場景中實現行走。為了實現這一目標,需要完成以下任務: 加載室內模型及材質貼圖 實現攝像機控制,支持用戶自由行走 添加光源,…

    編程 2025-04-25

發表回復

登錄後才能評論