function round(num, iCount) {
// iCount 保留幾位小數
let changeNum = num
let zs = true
// 判斷是否是負數
if (changeNum < 0) {
changeNum = Math.abs(changeNum)
zs = false
}
const iB = Math.pow(10, iCount)
// 有時乘100結果也不精確
const value1 = changeNum * iB
let intDecSet = []
let intDecHun = []
let fValue = value1
const value2 = value1.toString()
const iDot = value2.indexOf('.')
// 如果是小數
if (iDot !== -1) {
intDecSet = changeNum.toString().split('.')
// 如果是科學計數法結果
if (intDecSet[1].indexOf('e') !== -1) {
return Math.round(value1) / iB
}
intDecHun = value2.split('.')
if (intDecSet[1].length <= iCount) {
return parseFloat(num, 10)
}
const fValue3 = parseInt(intDecSet[1].substring(iCount, iCount + 1), 10)
if (fValue3 >= 5) {
fValue = parseInt(intDecHun[0], 10) + 1
} else {
// 對於傳入的形如111.834999999998 的處理(傳入的計算結果就是錯誤的,應為111.835)
if (fValue3 === 4 && intDecSet[1].length > 10 && parseInt(intDecSet[1].substring(iCount + 1, iCount + 2), 10) === 9) {
fValue = parseInt(intDecHun[0], 10) + 1
} else {
fValue = parseInt(intDecHun[0], 10)
}
}
}
// 如果是負數就用0減四捨五入的絕對值
let val = zs ? (fValue / iB) : (0 - fValue / iB)
const d = val.toString().split('.')
if (d.length === 1) {
return val.toString() + '.00'
}
if (d.length > 1) {
if (d[1].length < 2) {
val = val.toString() + '0'
}
return val
}
}
js-正負數保留小數點特定位數
相關文章
- javascript保留指定位數小數程式碼JavaScript
- JavaScript浮點數保留兩位小數JavaScript
- js 將負數或小數轉成正整數JS
- 利用js正規表示式校驗正數、負數、和小數JS
- js如何實現數字保留小數點後兩位小數JS
- mysql格式化小數保留小數點後兩位(小數點格式化)MySql
- javascript保留小數點後兩位JavaScript
- iOS小數點格式化:最多保留兩位小數,小數點後末尾的0不要iOS
- JavaScript保留指定位數小數但是不進行四捨五入JavaScript
- PHP 保留小數點後有效數字(四捨五入)PHP
- js實現如何保留float浮點數小數點後兩位JS
- 匹配正負小數正規表示式程式碼
- input限制只能輸入整數或保留小數點後2位的浮點數
- JavaScript 負數轉換為正數JavaScript
- JavaScript判斷數字正負數JavaScript
- C#保留小數位數的方法C#
- sql server 中對小數保留兩位小數SQLServer
- Js保留兩位小數JS
- java保留兩位小數Java
- oracle保留兩位小數Oracle
- JavaScript保留兩位或者其他位數小數JavaScript
- 【c語言】將正數變成對應的負數,將負數變成對應的正數C語言
- hutool jsonutil BigDecimal 保留小數點處理JSONDecimal
- 影片直播app原始碼,EditText保留小數位數APP原始碼
- asp.net 除法保留小數ASP.NET
- javascript 保留小數位 (toFixed方法)JavaScript
- Adroid edittext 輸入小數時只能輸入到小數點後的固定位數
- java二進位制正數和負數取反Java
- Java 兩個整數相除保留兩位小數,將小數轉化為百分數Java
- android kotlin 小數保留格式化位數AndroidKotlin
- C++保留有效位與保留小數位C++
- Python中怎麼保留小數?Python
- Java保留兩位小數的方法Java
- Javascript 保留幾位小數的方法JavaScript
- Python中負數變成正數常用的方法!Python
- 專案三 負數把正數趕出佇列佇列
- 實現保留指定數目小數的示例程式碼
- Python如何保留float型別小數點後3位Python型別