数字格式,删除千位分隔符

时间:2017-12-12 15:39:03

标签: javascript internationalization number-formatting

我希望格式化一个数字,使其具有“前导零”(因此字符串总是等长)。 - 虽然我可以作为备份手动执行此操作但我希望使用最佳选项。 - 作为标准格式语法(如pythons "{0:4d}".format(number))似乎不可用,下一个最好是使用国际化库?

我试过这个小提琴:https://jsfiddle.net/f4202ne3/1/

let fmt = new Intl.NumberFormat('en-US', 
  {minimumIntegerDigits: 4,
  maximumFractionDigits: 0
});
m = 1;
n = 5001

console.log(m.toString(), fmt.format(m)) //"0001"
console.log(n.toString(), fmt.format(n)) ///"5000"

然而,这显示“5,000”和“0,001”。如何将千位分隔符设置为值('')?

2 个答案:

答案 0 :(得分:1)

只需将useGrouping选项设置为false

即可
let fmt = new Intl.NumberFormat('en-US', {
  minimumIntegerDigits: 4,
  maximumFractionDigits: 0,
  useGrouping: false
});

答案 1 :(得分:0)

您可以使用.pad字符串方法(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart

"1231".padStart(8,0)//00001231
"131".padStart(8,0)//00000131