【问题标题】:Adding Decimal to a String in Javascript [duplicate]在Javascript中将小数添加到字符串[重复]
【发布时间】:2017-12-08 13:08:22
【问题描述】:

我得到了以美分为单位的数字:

例如。

  102042
  982123
  121212

我想把它们兑换成美元。我认为最简单的方法是将数字转换为字符串并添加小数。

例如。

  1020.42
  9821.23
  1212.12

我目前正在这样做,但它只四舍五入到小数点后 1 位。我需要做什么才能使它四舍五入到小数点后两位?

var number = 102042
number.toString().match(/^-?\d+(?:\.\d{0,2})?/)[0]

更新:我发现了我的问题所在。这不是四舍五入,而是我将 lodash 过滤器错误地组合到除法的事实。再次感谢!

【问题讨论】:

  • number = number / 100
  • 我也讨厌数学
  • (number / 100).toFixed(2)
  • @JaromandaX 我以前有过这个,但它不起作用
  • 真的吗?它在做什么?

标签: javascript string rounding


【解决方案1】:

一美分是一美元的1/100,所以你可以通过做来计算美元的数量

dollars = number / 100

【讨论】:

    【解决方案2】:

    var number = 102042;
    
    console.log(number/100);

    【讨论】:

    • 102040 不会打印第 100 位。
    【解决方案3】:

    最简单的方法是使用数字本身,您可以乘以 0.01 或除以 100,您将得到以美元为单位的金额:

    var numbers = [102042,982123,121212];
    
    for(num of numbers) 
      console.log(num/100);

    【讨论】:

      猜你喜欢
      • 2016-02-03
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      • 2013-05-07
      • 2011-08-10
      • 1970-01-01
      • 2016-08-02
      相关资源
      最近更新 更多