下面的代码是通过prototype方式,向Date对象添加了一个自定义的函数来实现自定义的格式化输出
- <script language="JavaScript">
- Date.prototype.format = function(format) //author: meizz
- {
- var o = {
- "M+" : this.getMonth()+1, //month
- "d+" : this.getDate(), //day
- "h+" : this.getHours(), //hour
- "m+" : this.getMinutes(), //minute
- "s+" : this.getSeconds(), //second
- "q+" : Math.floor((this.getMonth()+3)/3), //quarter
- "S" : this.getMilliseconds() //millisecond
- }
- if(/(y+)/.test(format)) format=format.replace(RegExp.$1,
- (this.getFullYear()+"").substr(4 - RegExp.$1.length));
- for(var k in o)if(new RegExp("("+ k +")").test(format))
- format = format.replace(RegExp.$1,
- RegExp.$1.length==1 ? o[k] :
- ("00"+ o[k]).substr((""+ o[k]).length));
- return format;
- }
- alert(new Date().format("yyyy-MM-dd"));
- alert(new Date("january 12 2008 11:12:30").format("yyyy-MM-dd hh:mm:ss"));
- </script>
还有一种方法,是通过toISOString函数,它返回一个ISO标准的格林尼治时间,格式形如2014-06-05T03:23:08.882Z,所以要格式化一下
- new Date().toISOString().replace(/T/, ' ').replace(/\..+/, '')