js 时间函数封装
html代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script src="date_tool.js"></script> <script> var d = new Date(); var date_str = '2016-12-18 16:58:58'; //返回时间戳 不需毫秒数 document.write(dateTool.getTimeStampS(d)+"<br>"); //返回时间戳包括毫秒数 document.write(dateTool.getTimeStampMs(d)+"<br>"); //返回时间格式化过的时间 document.write(dateTool.getTime(d)+"<br>"); //返回时间格式化过的日期 document.write(dateTool.getDay(d)+"<br>"); //返回在在某个时间点上加n秒 的时间 document.write(dateTool.addSec('time',300,d)+"<br>"); //返回在在某个时间点上加n秒 的日期 document.write(dateTool.addSec('day',300,d)+"<br>"); //返回年份 document.write(dateTool.getSingle('s_year',d)+"<br>"); //返回月份 document.write(dateTool.getSingle('s_month',d)+"<br>"); //返回日 document.write(dateTool.getSingle('s_day',d)+"<br>"); //返回小时 document.write(dateTool.getSingle('s_hour',d)+"<br>"); //返回分 document.write(dateTool.getSingle('s_min',d)+"<br>"); //返回秒 document.write(dateTool.getSingle('s_second',d)+"<br>"); //字符串转日期对象 document.write(dateTool.strToDate(date_str)+"<br>"); </script> </body> </html>
js代码
;(function(){ var s_year,s_month,s_day,s_hour,s_min,s_second; var dateTool = { getTime:function(d){ this._init(d); return s_year+'-'+s_month+'-'+s_day+' '+s_hour+':'+s_min+':'+s_second; }, getDay:function(d){ this._init(d); return s_year+'-'+s_month+'-'+s_day; }, getTimeStampS:function(d){ return Date.parse(d)/1000; }, getTimeStampMs:function(d){ return d.getTime(); }, getSingle:function(type,d){ this._init(d); var rs = ''; switch(type){ case 's_year': rs = s_year; break; case 's_month': rs = s_month; break; case 's_day': rs = s_day; break; case 's_hour': rs = s_hour; break; case 's_min': rs = s_min; break; case 's_second': rs = s_second; break; } return rs; }, addSec:function(type,sec,d){ var tsms = this.getTimeStampMs(d); var tmp_sec = tsms+parseInt(sec)*1000; var _d = new Date(tmp_sec); var rs = ''; if(type=='time'){ rs = this.getTime(_d); }else{ rs = this.getDay(_d); } return rs; }, //初始化 _init:function(d){ var rs = ''; s_year = ''+d.getFullYear(); s_month = this.fillTime(d.getMonth() + 1); s_day = this.fillTime(d.getDate()); s_hour = this.fillTime(d.getHours()); s_min = this.fillTime(d.getMinutes()); s_second = this.fillTime(d.getSeconds()); }, fillTime:function(num){ num = num<10?('0'+num):(''+num); return num; }, //字符串 转 日期对象 如 2016-10-21 16:58:00 strToDate:function(str){ var a = str.split(" "); var b = a[0].split("-"); var c = a[1].split(":"); var yyyy = b[0]; var mth = parseInt(b[1])-1; var dd = b[2]; var hh = c[0]; var mm = c[1]; var ss = c[2]; // new Date(yyyy,mth,dd,hh,mm,ss); // yyyy:四位数表示的年份 // mth:用整数表示月份,从0-11(1月到12月) // dd:表示一个月中的第几天,从1到31 // hh:小时数,从0(午夜)到23(晚11点) // mm:分钟数,从0到59的整数 // ss:秒数,从0到59的整数 // ms:毫秒数,为大于等于0的整数 var date = new Date(yyyy,mth,dd,hh,mm,ss); return date; } }; window.dateTool = dateTool; })();