当前位置: 首页 > 面试题库 >

如何在JavaScript中输出带有前导零的数字

龙默
2023-03-14
问题内容

我可以用math.round舍入到小数位数的x位数,但是有没有办法舍入到小数点的左边?例如,如果我指定2个位置,则5变为05


问题答案:

您是否要求零填充?不是真正的舍入。您必须将其转换为字符串,因为数字对于前导零没有意义。像这样

function pad(num, size) {
    var s = num+"";
    while (s.length < size) s = "0" + s;
    return s;
}

或者,如果您知道您永远不会使用X个以上的零,那么可能会更好。这假设您永远不要超过10位数字。

function pad(num, size) {
    var s = "000000000" + num;
    return s.substr(s.length-size);
}

如果您关心负数,则必须去除“-”并读取它。



 类似资料:
  • 问题内容: 尝试这个: 因为什么时候40 = 32? 问题答案: 带有前导零的数字将解释为八进制和。

  • 问题内容: 我需要存储Medicare APC代码。 我相信格式需要4个数字。前导零是相关的。有什么方法可以通过验证存储此数据类型?我应该如何存储这些数据(varchar(4),int)? 问题答案: (可选)您仍然可以添加检查约束,以确保数据为带前导零的数字。本示例将在Oracle中引发异常。在其他RDBMS中,可以使用正则表达式检查:

  • 问题内容: 给定以下示例: 输出为: 为什么? 问题答案: 这是因为前导零的整数文字是八进制整数(以8为底):

  • 问题内容: Javascript的parseInt函数似乎无法完全正常工作。 问题答案: 这是因为如果数字以“ 0”开头,则将其视为以8为基数(八进制)。 您可以通过将base作为第二个参数来强制使用base。 根据docs,第二个参数是可选的,但并不总是假定为10,如您从示例中看到的那样。

  • 问题内容: 在JavaScript中建议零填充值的推荐方法是什么?我想我可以构建一个自定义函数以将零填充到类型转换值上,但是我想知道是否有更直接的方法来做到这一点? 注意: “零填充”是指该词在数据库中的含义(其中数字5的6位零填充表示为“ 000005”)。 问题答案: 正如评论员所指出的那样,该解决方案是“聪明的”,而且通常就像聪明的解决方案一样,它占用大量内存并且相对较慢。如果您担心性能,请

  • 需要向列值(varchar)添加前导零,并在同一个表中更新它。例如:431 as 000431,5431 as 005431,64531 as 064531,基本上我需要用零替换数据,使其为6位。这是sybase ase。 谢啦