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;
})();
js 时间函数封装的更多相关文章
- js获取当前时间,js时间函数
Js获取当前日期时间及其它操作,js时间函数 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); ...
- js 时间函数 及相关运算大全
js 时间函数 及相关运算大全 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); ...
- JS——tab函数封装
1.为li标签添加index属性,这个属性正好就是span标签数组的index值 2.函数封装适合页面有多个tab切换,需要注意的在获取的li标签和span标签对象时,必须将对应div对象作为参数传入 ...
- JS 抖动函数封装
原生JS实现封装的抖动函数框架 <style> ul{ margin-top: 100px; } li { float: left; margin-left: 20px; position ...
- js时间函数
时间 new Date() 获取时间,可以理解为是系统默认的函数. 从小括号里面获取系统时间日期,相当于在调用系统默认的函数. 年 getFullYear() 注意,有Full. 月 getMonth ...
- JS 时间函数 / 格式化时间戳
处理时间主要使用时间对象 Date , 其提供两个静态方法 Date.now() //获得当前时间戳 Date.parse() //将字符串转化成时间戳 创建对象 new Date(); // 返回当 ...
- 兼容主流浏览器的js原生函数封装
1.获取和修改垂直滚动条的滚动距离 //获取滚动条滚动距离function getScrollTop(){ var fromTop=document.documentElement.scrollTop ...
- js getByClass函数封装
function getByClass(oParent, sClass) { var aEle=oParent.getElementsByTagName('*'); var aResult=[]; v ...
- js继承函数封装
function extend(subClass,superClass) { //初始化一个中间空对象,为了转换主父类关系 var F = function() {}; F.prototype = s ...
随机推荐
- java22
1:登录注册IO版本案例(掌握) 要求,对着写一遍. cn.itcast.pojo User cn.itcast.dao UserDao cn.itcast.dao.impl UserDaoImpl( ...
- LINK1123:failure during conversion to COFF:file invalid or corrupt
参考 http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=20726500&id=4528320 试了微软官方说明:http ...
- JAVA基础再回首
http://blog.csdn.net/m366917/article/details/51559031
- linux shell 常用指令
1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行. 2. ls 查看目 ...
- EF MySql 配置文件
<?xml version="1.0" encoding="utf-8"?><!--有关如何配置 ASP.NET 应用程序的详细信息,请访问 ...
- 【BZOJ】3991: [SDOI2015]寻宝游戏
题意 给一个\(n\)个点带边权的树.有\(m\)次操作,每一次操作一个点\(x\),如果\(x\)已经出现,则\(x\)消失.否则\(x\)出现.每一操作后,询问从某个点开始走,直到经过所有出现的点 ...
- BZOJ3252: 攻略
Description 题目简述:树版[k取方格数] 众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏. 今天他得到了一款新游戏<XX半岛>,这款游戏有n个场景 ...
- Java知识结构
- mysql在线修改表结构大数据表的风险与解决办法归纳
整理这篇文章的缘由: 互联网应用会频繁加功能,修改需求.那么表结构也会经常修改,加字段,加索引.在线直接在生产环境的表中修改表结构,对用户使用网站是有影响. 以前我一直为这个问题头痛.当然那个时候不需 ...
- HDU 1892 See you~ (二维树状数组)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1892 See you~ Problem Description Now I am leaving h ...