在 JavaScript 中保留小數(shù)點(diǎn)后兩位的方法
在 JavaScript 中,保留小數(shù)點(diǎn)后兩位的方法
在 JavaScript 中,有多種方法可以保留小數(shù)點(diǎn)后兩位。以下是其中的一些方法:
1. toFixed() 方法:該方法將數(shù)字轉(zhuǎn)換為字符串,并保留指定的小數(shù)位數(shù)。
let num = 3.1415926; let result = num.toFixed(2); // "3.14"
2. Math.round() 方法:該方法將數(shù)字四舍五入到指定的小數(shù)位數(shù)。
let num = 3.1415926; let result = Math.round(num * 100) / 100; // 3.14
3. parseFloat() 和正則表達(dá)式:該方法將字符串轉(zhuǎn)換為數(shù)字,并保留指定的小數(shù)位數(shù)。
let num = "3.1415926"; let result = parseFloat(num).toFixed(2); // "3.14"
4. Number() 和正則表達(dá)式:該方法將字符串轉(zhuǎn)換為數(shù)字,并保留指定的小數(shù)位數(shù)。
let num = "3.1415926"; let result = Number(num.match(/^\d+(?:\.\d{0,2})?/)); // 3.14
以上是其中的一些方法,你可以根據(jù)自己的需求選擇適合的方法。
擴(kuò)展
js保留兩位小數(shù)方法總結(jié)
JS數(shù)據(jù)格式化是在進(jìn)行web前端開(kāi)發(fā)時(shí)常碰到的事情,特別是在數(shù)據(jù)類(lèi)型為Float的數(shù)據(jù)就需要特殊處理,如保留兩位小數(shù)、小數(shù)點(diǎn)后的數(shù)據(jù)是否需要四舍五入等等。下面就來(lái)介紹實(shí)現(xiàn)數(shù)據(jù)格式化保留兩位小數(shù)的多種方法。
1、JS自帶的方法toFixed(),toFixed() 方法可把 Number 四舍五入為指定小數(shù)位數(shù)的數(shù)字。
語(yǔ)法:NumberObject.toFixed(num),mun是必需的參數(shù),即規(guī)定小數(shù)的位數(shù),是 0 ~ 20 之間的值,包括 0 和 20,有些實(shí)現(xiàn)可以支持更大的數(shù)值范圍。如果省略了該參數(shù),將用 0 代替,所以toFixed() 方法可以實(shí)現(xiàn)保留2位、3位、4位等等,取決于num的數(shù)值。
返回值:返回 NumberObject 的字符串表示,不采用指數(shù)計(jì)數(shù)法,小數(shù)點(diǎn)后有固定的 num 位數(shù)字。如果必要,該數(shù)字會(huì)被舍入,也可以用 0 補(bǔ)足,以便它達(dá)到指定的長(zhǎng)度。如果 num 大于 le+21,則該方法只調(diào)用 NumberObject.toString(),返回采用指數(shù)計(jì)數(shù)法表示的字符串。
當(dāng) num 太小或太大時(shí)拋出異常 RangeError。0 ~ 20 之間的值不會(huì)引發(fā)該異常。有些實(shí)現(xiàn)支持更大范圍或更小范圍內(nèi)的值。
當(dāng)調(diào)用該方法的對(duì)象不是 Number 時(shí)拋出 TypeError 異常。
<script type=”text/javascript”> var num = new Number(13.376954); document.write (num.toFixed(2)) </script>
輸出:13.38
2、自定義函數(shù)實(shí)現(xiàn)小數(shù)保留并四舍五入。
function roundFun(numberRound,roundDigit) { //四舍五入,保留位數(shù)為roundDigit if (numberRound>=0){ var tempNumber = parseInt((numberRound * Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit); return tempNumber; } else{ numberRound1=-numberRound; var tempNumber = parseInt((numberRound1 * Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit); return -tempNumber; } }
然后調(diào)用roundFun()這個(gè)函數(shù)就可以了。如roundFun('13.376954′,2);當(dāng)然返回的結(jié)果跟第一種方法是一樣的。
3、通過(guò)函數(shù)截取,截取到小數(shù)點(diǎn)后面第幾位,當(dāng)然這種方法就沒(méi)有四舍五入了。
<script type=”text/javascript”> tmp = 13.376954″ result = tmp.substr(0,tmp.indexOf(“.”)+2); alert(result); </script>
到此這篇關(guān)于在 JavaScript 中,保留小數(shù)點(diǎn)后兩位的方法的文章就介紹到這了,更多相關(guān)js保留小數(shù)點(diǎn)后兩位內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- JavaScript中保留小數(shù)點(diǎn)后N位方法總結(jié)
- 實(shí)現(xiàn)js保留小數(shù)點(diǎn)后N位的代碼
- Js保留小數(shù)點(diǎn)的4種效果實(shí)現(xiàn)代碼分享
- js保留小數(shù)點(diǎn)后幾位的寫(xiě)法
- js浮點(diǎn)數(shù)保留兩位小數(shù)點(diǎn)示例代碼(四舍五入)
- js驗(yàn)證整數(shù)加保留小數(shù)點(diǎn)的簡(jiǎn)單實(shí)例
- JS格式化數(shù)字保留兩位小數(shù)點(diǎn)示例代碼
- javascript中RegExp保留小數(shù)點(diǎn)后幾位數(shù)的方法分享
- JS保留小數(shù)點(diǎn)(四舍五入、四舍六入)實(shí)現(xiàn)思路及實(shí)例
相關(guān)文章
js實(shí)現(xiàn)TAB切換對(duì)應(yīng)不同顏色的代碼
這篇文章主要介紹了js實(shí)現(xiàn)TAB切換對(duì)應(yīng)不同顏色的代碼,涉及javascript頁(yè)面元素的遍歷及樣式的動(dòng)態(tài)操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08Array.prototype.slice 使用擴(kuò)展
slice 可以用來(lái)獲取數(shù)組片段,它返回新數(shù)組,不會(huì)修改原數(shù)組。2010-06-06Javascript 遍歷對(duì)象中的子對(duì)象
昨天同事問(wèn)我一個(gè)問(wèn)題:“有一個(gè)JSON對(duì)象,其中有若干個(gè)子對(duì)象,如何遍歷這個(gè)對(duì)象中的子對(duì)象?”2009-07-07jquery實(shí)現(xiàn)select下拉框美化特效代碼分享
這篇文章主要介紹了jquery實(shí)現(xiàn)select下拉框美化特效,實(shí)現(xiàn)效果簡(jiǎn)潔大方,推薦給大家,有需要的小伙伴可以參考下。2015-08-08移動(dòng)端H5喚起APP的寫(xiě)法實(shí)例(IOS、android)
最近在做掃碼之后的h5頁(yè)面喚醒App的功能,所以記錄一下,這篇文章主要給大家介紹了關(guān)于移動(dòng)端H5喚起APP的相關(guān)資料,需要的朋友可以參考下2021-07-07JS實(shí)現(xiàn)靈巧的下拉導(dǎo)航效果代碼
這篇文章主要介紹了JS實(shí)現(xiàn)靈巧的下拉導(dǎo)航效果代碼,通過(guò)自定義js插件腳本dropdown.js實(shí)現(xiàn)簡(jiǎn)單的下拉導(dǎo)航效果的功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08TypeScript開(kāi)發(fā)小狀況記錄之選且只選一個(gè)
在開(kāi)發(fā)中需要定義一個(gè)對(duì)象的類(lèi)型,此類(lèi)型必須包含某n個(gè)字段中的其中一種,這篇文章主要給大家介紹了關(guān)于TypeScript開(kāi)發(fā)小狀況記錄之選且只選一個(gè)的相關(guān)資料,需要的朋友可以參考下2022-10-10一個(gè)原生的用戶(hù)等級(jí)的進(jìn)度條
做了一個(gè)用戶(hù)等級(jí)的進(jìn)度條,只是練手。2010-07-07