我想让javascript返回当前时间的格式,看起来像"2011-11-03 11:18:04"
。
我尝试了var XX = date()
,但返回的格式不是我想要的。它看起来像
2013年3月15日星期二06:45:40 GMT-0500
如何将时间设置成"2011-11-03 11:18:04"
格式
正确创建日期(var xx = new Date();
,注意大写和new
)之后,您有两个选择:
-
使用
Date
实例(MDN | specification)的各种方法,自己构建字符串 -
使用像MomentJS这样的库来为你做这项工作。
使用Date函数-
//MM-dd-yyyy HH:mm:ss format
function formatDateTime(d){
function addZeros(n){
return n < 10 ? '0' + n : '' + n;
}
return addZeros(d.getFullYear()+1)+"-"+ addZeros(d.getMonth()) + "-" + d.getDate() + " " +
addZeros(d.getHours()) + ":" + addZeros(d.getMinutes()) + ":" + addZeros(d.getMinutes());
}
与momentjs——var now = moment().format("YYYY-MM-DD HH:mm:ss");
jsFiddle
这是一个完整的工作解决方案
<script type="text/javascript">
function giveNewDate(){
var d = new Date();
var r = d.getFullYear()+"-"+zPlus(d.getMonth())+"-"+zPlus(d.getDate())+" "+zPlus(d.getHours())+":"+zPlus(d.getMinutes())+":"+zPlus(d.getSeconds());
function zPlus(digit){
var digit = parseInt(digit);
if (digit < 10){
return "0"+digit;
}else{
return ""+digit;
}
}
return r;
}
//to use: just call the giveNewDate() function
alert(giveNewDate());
</script>
在脚本中,只需在需要显示文本的地方调用givenwdate()函数。
祝你有美好的一天!:)