首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NumeralJS无小数格式/四舍五入

NumeralJS无小数格式/四舍五入
EN

Stack Overflow用户
提问于 2020-06-19 12:16:14
回答 1查看 232关注 0票数 0

我使用NumeralJS格式化金额,如下所示;

代码语言:javascript
复制
numeral(unformattedValue).format(amtFormat);

因此,如果amtFormat设置为"0,0.00",那么如果金额输入为"123.1",则得到的结果为"123.10“。

但我想要的是没有格式/四舍五入等发生在小数点后…因此,如果输入值是1.999999,我希望输出是1.999999 (小数点后没有任何变化)

有没有可能向format()传递一些东西来实现这一点?我在NumeralJS文档中找不到任何东西。

EN

回答 1

Stack Overflow用户

发布于 2020-06-19 12:57:34

鉴于您对以下方面的要求:

  • 格式化千位分隔符
  • 保持小数“原样”

下面是一个你可以尝试的选项。可能有一种更简单的方法可以做到这一点,也许是通过定义一个自定义的format,但这里有一个想法:

代码语言:javascript
复制
// example input
let input = [1549.9988, 1549123.9912938, 123.456];

input.forEach(i => {

    // count the number of decimals
    let numberOfDecimals = i.toString().split(".")[1].length;

    // construct a string representing the number of decimals to retain
    let decFormat = "0".repeat(numberOfDecimals - 1);

    // format the number using this string
    let num = numeral(i).format("0,0[." + decFormat + "]");

    console.log(num);
    
});
代码语言:javascript
复制
<script src="//cdnjs.cloudflare.com/ajax/libs/numeral.js/2.0.6/numeral.min.js"></script>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62463173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档