猿问

JavaScript添加到目前为止的前导零

JavaScript添加到目前为止的前导零

我创建这个脚本是为了提前10天以dd/mm/yyy格式计算日期:

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;

如果有人能告诉我把这些插入到脚本中的位置,我会非常感激的。


郎朗坤
浏览 850回答 3
3回答

森林海

下面是日期对象文档在MozillaDeveloperNetwork上使用自定义的“pad”函数,而不必扩展Javascript的数字原型。作为一个例子,他们给出的方便的函数是function&nbsp;pad(n){return&nbsp;n<10&nbsp;?&nbsp;'0'+n&nbsp;:&nbsp;n}下面是在上下文中使用的。/*&nbsp;use&nbsp;a&nbsp;function&nbsp;for&nbsp;the&nbsp;exact&nbsp;format&nbsp;desired...&nbsp;*/function&nbsp;ISODateString(d){ &nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;pad(n){return&nbsp;n<10&nbsp;?&nbsp;'0'+n&nbsp;:&nbsp;n} &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;d.getUTCFullYear()+'-' &nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;pad(d.getUTCMonth()+1)+'-' &nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;pad(d.getUTCDate())+'T' &nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;pad(d.getUTCHours())+':' &nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;pad(d.getUTCMinutes())+':' &nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;pad(d.getUTCSeconds())+'Z'}var&nbsp;d&nbsp;=&nbsp;new&nbsp;Date();console.log(ISODateString(d));&nbsp;//&nbsp;prints&nbsp;something&nbsp;like&nbsp;2009-09-28T19:03:12Z

开满天机

您可以定义一个“str_pad”函数(如php中的那样):function&nbsp;str_pad(n)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;String("00"&nbsp;+&nbsp;n).slice(-2);}
随时随地看视频慕课网APP
我要回答