我在 Javascript 中使用日期时遇到问题,在 PHP 中你使用 date("Ymd H:is") 之类的东西来检索特定的日期和时间,我怎样才能在 Javascript 中实现这一点?getMonth() 方法只返回 1 位数,我真的需要它们是 2 位数
问问题
159 次
5 回答
1
由于我对几乎所有答案都发表了评论,因此我最好发表我的建议
function pad(num) { return ("0"+num).slice(-2); }
function getDisplayDate() {
var date = new Date();
return date.getFullYear()+
"-"+pad(date.getMonth()+1)+
"-"+pad(date.getDate())+
" "+pad(date.getHours())+
":"+pad(date.getMinutes())+
":"+pad(date.getSeconds());
}
setInterval(function() {
document.getElementById("time").innerHTML=getDisplayDate();
},500);
于 2013-03-17T20:43:32.987 回答
0
这段代码是根据@mplungjan 给出的指针进行调整的——(请归功于他)另请查看他的解决方案,这是一个更好的与日期数字一起使用的解决方案。
var str = 10; // month-digit from getMonth()
function pad(val) {
return "0" + val;
}
var month = str < 10 ? pad(str) : str;
console.log(month);
于 2013-03-17T06:09:20.243 回答
0
为什么你在得到 <10 之前不加 0
于 2013-03-17T05:43:14.103 回答
0
尝试这个 :
function dateToYMD(date) {
var d = date.getDate();
var m = date.getMonth() + 1;
var y = date.getFullYear();
return '' + y + '-' + (m<=9 ? '0' + m : m) + '-' + (d <= 9 ? '0' + d : d) + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds();
}
var d = new Date();
alert(dateToYMD(d));
于 2013-03-17T05:44:44.853 回答
-2
您可以从 Date 类中获取年、分钟等。您可以使用下面的示例获得 2 位数的月份。例如
Date.prototype.getLongMonth = function() {
var month = this.getMonth();
if (String(month).length == 1) month = '0'.concat(month);
return month;
}
var now = new Date();
var theDate = now.getFullYear() + '-' + now.getLongMonth() + '-' + now.getDate() + ' ' + now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds();
console.log(theDate); // result : 2013-02-17 12:41:2
于 2013-03-17T05:40:53.767 回答