我想把一个数格式化为两位数。这个问题是在传递0-9时引起的,所以我需要将它格式化为00-09。
JavaScript中有数字格式化器吗?
我想把一个数格式化为两位数。这个问题是在传递0-9时引起的,所以我需要将它格式化为00-09。
JavaScript中有数字格式化器吗?
当前回答
我的版本:
`${Math.trunc(num / 10)}${Math.trunc(num % 10)}`;
const func = (num) => '${Math.trunc(num / 10)}${Math.trunc(num % 10)}'; 常量数 = [1, 3, 5, 6, 8, 9, 10, 20, 56, 80]; nums.forEach(num => console.log(func(num)));
其他回答
这是我的版本。可以很容易地适应其他场景。
function setNumericFormat(value) {
var length = value.toString().length;
if (length < 4) {
var prefix = "";
for (var i = 1; i <= 4 - length; i++) {
prefix += "0";
}
return prefix + value.toString();
}
return value.toString();
}
“${}数量”.replace (/ ^ (\ d) /美元,' 0 $ 1 ');
正则表达式是最好的。
这是一个非常好的和简短的解决方案:
smartTime(time) {
return time < 10 ? "0" + time.toString().trim() : time;
}
我的例子是这样的
var n =9;
var checkval=('00'+n).slice(-2);
console.log(checkval)
输出是09
使用这个函数,你可以打印任意n个数字
function frmtDigit(num, n) {
isMinus = num < 0;
if (isMinus)
num *= -1;
digit = '';
if (typeof n == 'undefined')
n = 2;//two digits
for (i = 1; i < n; i++) {
if (num < (1 + Array(i + 1).join("0")))
digit += '0';
}
digit = (isMinus ? '-' : '') + digit + num;
return digit;
};