删除尾随零到小数点后 2 位
Remove trailing zeroes to 2 decimal positions
我希望您在以下方面提供帮助:我的价格可能超过 2 个小数点,即 0.009 或 0.0014
但是,我也有正常价格的价格,例如 2.9 或 14.45。
我将所有价格存储到小数点后 4 位,即 2.9 变为 2.9000。
我正在寻找的是以下内容,我想显示至少 2 个小数点 num.toFixed(2),但是如果有超过 2 个小数点并且那些不是 0 我想也给他们看。
示例:
- 2.9000 变为 2.90
- 0.0001 保持为 0.0001
- 2.8540 变为 2.854
- 1.0100 变为 1.01
- 3.0000 变为 3.00
我试过 num.toFixed(2)
但这会删除第 2 位之后的所有小数。
如何实现我在示例中显示的内容?
提前致谢!
无论如何缩短它,只有 return 如果新数字与原始数字具有相同的值。
function shortenOrReturn(num) {
var shortNum = num.toFixed(2);
return (shortNum == num) ? shortNum : num;
}
console.log(shortenOrReturn(2.9000)) // becomes 2.90
console.log(shortenOrReturn(0.0001)) // remains 0.0001
console.log(shortenOrReturn(2.8540)) // becomes 2.854
console.log(shortenOrReturn(1.0100)) // becomes 1.01
console.log(shortenOrReturn(3.0000)) // becomes 3.00
这里是我的建议:
function removeZerosFromRight (input) {
return Number(input.toString())
}
示例:
- removeZerosFromRight(123.0011) => 123.0011
- removeZerosFromRight(123.0010) => 123.001
- removeZerosFromRight(123.0100) => 123.01
- removeZerosFromRight(123.1000) => 123.1
- removeZerosFromRight(123.02) => 123.02
我希望您在以下方面提供帮助:我的价格可能超过 2 个小数点,即 0.009 或 0.0014
但是,我也有正常价格的价格,例如 2.9 或 14.45。
我将所有价格存储到小数点后 4 位,即 2.9 变为 2.9000。
我正在寻找的是以下内容,我想显示至少 2 个小数点 num.toFixed(2),但是如果有超过 2 个小数点并且那些不是 0 我想也给他们看。
示例:
- 2.9000 变为 2.90
- 0.0001 保持为 0.0001
- 2.8540 变为 2.854
- 1.0100 变为 1.01
- 3.0000 变为 3.00
我试过 num.toFixed(2)
但这会删除第 2 位之后的所有小数。
如何实现我在示例中显示的内容?
提前致谢!
无论如何缩短它,只有 return 如果新数字与原始数字具有相同的值。
function shortenOrReturn(num) {
var shortNum = num.toFixed(2);
return (shortNum == num) ? shortNum : num;
}
console.log(shortenOrReturn(2.9000)) // becomes 2.90
console.log(shortenOrReturn(0.0001)) // remains 0.0001
console.log(shortenOrReturn(2.8540)) // becomes 2.854
console.log(shortenOrReturn(1.0100)) // becomes 1.01
console.log(shortenOrReturn(3.0000)) // becomes 3.00
这里是我的建议:
function removeZerosFromRight (input) {
return Number(input.toString())
}
示例:
- removeZerosFromRight(123.0011) => 123.0011
- removeZerosFromRight(123.0010) => 123.001
- removeZerosFromRight(123.0100) => 123.01
- removeZerosFromRight(123.1000) => 123.1
- removeZerosFromRight(123.02) => 123.02