使用jQuery在数字前面添加额外的零?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (41)

我有这样格式的文件要上传

MR 1 MR 2 MR 100 MR 200 MR 300 等等。

我需要做的是在MR10之前加上额外的两个00,然后在MR10-99之前加一个额外的0

所以文件格式化

MR 001 MR 010 MR 076 等等。

提问于
用户回答回答于

假设将这些值存储在某些字符串中,请尝试如下:

function pad (str, max) {
  str = str.toString();
  return str.length < max ? pad("0" + str, max) : str;
}

pad("3", 3);    // => "003"
pad("123", 3);  // => "123"
pad("1234", 3); // => "1234"

var test = "MR 2";
var parts = test.split(" ");
parts[1] = pad(parts[1], 3);
parts.join(" "); // => "MR 002"
用户回答回答于

基本上,你想要最小长度为2或3,你可以调整您在这段代码中放入多少0。

var d = new Date();
var h = ("0"+d.getHours()).slice(-2);
var m = ("0"+d.getMinutes()).slice(-2);
var s = ("0"+d.getSeconds()).slice(-2);

我知道我总是会得到一个整数作为最小值(原因是1小时、2小时)等等,但是如果你不能确定只得到一个空字符串,你就可以做“000”+d.getHours()来确保得到最小值。

那么你想要3个数字吗?在我的代码中使用-3而不是-2,我只是写这个,因为我想以一种非常简单的方式构建一个24小时时钟。

扫码关注云+社区

领取腾讯云代金券