我希望格式化一个数字,使其具有“前导零”(因此字符串总是等长)。 - 虽然我可以作为备份手动执行此操作但我希望使用最佳选项。 - 作为标准格式语法(如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”。如何将千位分隔符设置为值(''
)?
答案 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