我希望你的帮助如下:我的价格可能超过2小数点,即0.009或0.0014
但是,我的价格也有正常价格,如2.9或14.45。
我将所有价格存储到4个小数点,即2.9变为2.9000。
我正在寻找的是以下内容,我想显示至少2个小数点num.toFixed(2),但是如果有超过2个小数点且那些不是0我也想显示它们。
例:
我已经尝试过num.toFixed(2)
,但这会删除第二个之后的所有小数。
我怎样才能实现我在示例中展示的内容?
提前致谢!
无论如何缩短它,只有与原始数字具有相同值时才返回新数字。
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())
}
例: