【问题标题】:Concat a number with zeros in javascript [duplicate]在javascript中用零连接一个数字[重复]
【发布时间】:2019-06-06 14:57:04
【问题描述】:

我在连接 json 时遇到问题。

我在做:

jsonb = jsonb.concat(1.200);

然后当我使用 jsonb 时,我看到“1.2”而不是“1.200”,我需要带零的数字,我该怎么做?

【问题讨论】:

  • 数字末尾的零被输入,使其成为字符串
  • 不存在“带零的数字”之类的东西,因为 javascript 浮点数没有精度。 1.2 和 1.200 是同一个数字...如果这是一个显示字段,您可以根据需要设置数字格式
  • @LeroyStav,您能否详细说明“javascript 浮点数没有精度”?
  • @LeroyStav,与 JavaScript 相比,引用的链接具体与什么有关?

标签: javascript


【解决方案1】:

1.200 不是大多数系统想要使用的数字,因此他们会将其截断为 1.2。正如其他人所说,您可以使用 toFixed 方法来解决此问题,或者只是将此值设为字符串。由于数学不需要零,很明显你希望它们是可视的,所以你可以把它变成一个字符串。

jsonb = jsonb.concat('1.200');

【讨论】:

    【解决方案2】:

    您可以在数字值上使用toFixed,但正如其他人指出的那样,数字本身没有尾随零,此函数返回一个字符串。

    console.log(1.200); // 1.2, no trailing zeroes
    console.log(1.2.toFixed(3)); // 1.200, trailing zeroes
    
    let someValue = 1.25;
    console.log(someValue.toFixed(0)); // 1
    console.log(someValue.toFixed(1)); // 1.3
    console.log(someValue.toFixed(2)); // 1.25
    console.log(someValue.toFixed(3)); // 1.250
    
    let val = someValue.toFixed(2);
    console.log(typeof someValue); // number
    console.log(typeof val); // string

    【讨论】:

      猜你喜欢
      • 2021-02-05
      • 2022-09-23
      • 1970-01-01
      • 2012-04-21
      • 1970-01-01
      • 1970-01-01
      • 2019-01-16
      • 2018-10-15
      • 2019-12-09
      相关资源
      最近更新 更多