目標是有 2 位小數而不計算 0
1.2234 => 1.22
0.2345 => 0.23
0.02345 => 0.023(而不是 0.02)
0.0000002345 => 0.00000023(而不是 0)
0.0000002346545645645646465465 => 0.00000023(而不是0)
0.002035 => 0.002 而不是 0)
我想決議 toFixed(2) 但不是 0 的小數。如何正確執行此操作?
uj5u.com熱心網友回復:
我認為從示例中您的意思是洗掉最后 2 位數字而不是將其固定為 2 位小數。
為此,這是我的方法。
function removeLastDigit(number, amount = 2)
{
const numberString = number.toString();
if(numberString.indexOf('.') === -1) return number;
let numberLength = numberString.length;
for(; numberLength >= 0 && amount; numberLength--){
if (numberString[numberLength] !== '0') amount--;
}
return numberString.slice(0, numberLength);
}
let num = 0.003040;
console.log(removeLastDigit(num)) //0.03
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/360485.html
標籤:javascript
上一篇:在一個div中定位多個類并計算它們被點擊的次數VanillaJS
下一篇:檢查是否在ES6中找到另一個陣列
