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;
})();
上一篇:EF Code First教程-02.1 Fluent API约定配置


下一篇:发光加载环动画-纯CSS动画效果-如何创建CSS3旋转预加载器(参照https://www.bilibili.com/video/BV1V4411C7z5?from=search&seid=9741275927942612817)