一尘不染

Javascript迄今为止添加了前导零

javascript

我已创建此脚本来以dd / mm / yyyy的格式提前10天计算日期:

var MyDate = new Date();
var MyDateString = new Date();
MyDate.setDate(MyDate.getDate()+10);
MyDateString = MyDate.getDate() + '/' + (MyDate.getMonth()+1) + '/' + MyDate.getFullYear();

通过将这些规则添加到脚本中,我需要使日期显示在日和月部分的前导零。我似乎无法正常工作。

if (MyDate.getMonth < 10)getMonth = '0' + getMonth;

if (MyDate.getDate <10)get.Date = '0' + getDate;

如果有人可以告诉我将这些内容插入脚本的位置,我将非常感激。


阅读 329

收藏
2020-04-25

共1个答案

一尘不染

var MyDate = new Date();
var MyDateString;

MyDate.setDate(MyDate.getDate() + 20);

MyDateString = ('0' + MyDate.getDate()).slice(-2) + '/'
             + ('0' + (MyDate.getMonth()+1)).slice(-2) + '/'
             + MyDate.getFullYear();

编辑:

为了解释,.slice(-2)给我们字符串的最后两个字符。因此,无论如何,我们都可以添加"0"日期或月份,并只要求输入最后两个,因为它们始终是我们想要的两个。

因此,如果MyDate.getMonth()返回9,它将是:

("0" + "9") // Giving us "09"

因此加上.slice(-2)后,我们便得到了最后两个字符:

("0" + "9").slice(-2)
"09"

但是,如果MyDate.getMonth()返回10,它将是:

("0" + "10") // Giving us "010"

因此添加后.slice(-2),我们可以得到最后两个字符,或者:

("0" + "10").slice(-2)
"10"
2020-04-25