你不知道的补0方法

Posted Zhuxy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你不知道的补0方法相关的知识,希望对你有一定的参考价值。

在业务中有时候会遇到时间倒计时,特别是电商类业务中的秒杀、抢购、预约等场景,所以就设计时间不足两位,前面补0的操作。

比如 2020-3-9 变成 2020-03-09。

大多数开发朋友会使用如下方法:

function padLeftZero(n){
    return n < 10 ? \'0\' + n : n
}

function padLeftZero(n){
    return (n < 10 ? \'0\' : \'\') + i
}

其实上面两个方法都是一样的。

接下来再介绍几个别的方法:

slice 方法

语法:

slice(beginIndex)
slice(beginIndex, endIndex)

beginIndex 为负数时,取值改为 str.length + beginIndex,例如:

beginIndex = -2,str = \'010\' ,最后 \'010\'.slice(3-2) 结果为 \'10\',此时若 str=\'03\',\'03\'.slice(0) 结果为 \'03\'。

应用:

function padLeftZero(n){
    return (\'0\' + n).slice(-2)
}

padStart 方法

语法:

padStart(targetLength)
padStart(targetLength, padString)

就是在前面补足padString,直到满足targetLength的长度。例如

(3+\'\').padStart(2,\'0\') // 也就是 \'3\'.padStart(2,\'0\') , 目标长度是2则需要在前面补0来使长度满足,结果为 \'03\'。

应用:

function padLeftZero(n){
    return (n + \'\').padStart(2,\'0\')
}

其他一些方法:

new Date().toISOString().slice(0,10) // "2021-08-20"

new Date().toLocaleDateString("default", {year: "numeric", month: "2-digit", day: "2-digit"}) // "2021/08/21"

以上是关于你不知道的补0方法的主要内容,如果未能解决你的问题,请参考以下文章

mysql 查7天数据,无数据的补0怎么写

你不知道的console

你不知道的“二分查找”

trycatchfinally详解,你不知道秘密

你不知道的代码评价

你不知道的javaScript 之indexOf()