js(jQuery)获取时间的方法及常用时间类搜集


Posted in Javascript onOctober 23, 2013
$(function(){ 
var mydate = new Date(); 
var t=mydate.toLocaleString(); 
/*alert(t);*/ 
$("#time").text(t); 
$("#time").load("Untitled-1.html"); }); 
<P id="time">afwef</P>

获取JavaScript 的时间使用内置的Date函数完成

var mydate = new Date();
mydate.getYear(); //获取当前年份(2位)
mydate.getFullYear(); //获取完整的年份(4位,1970-????)
mydate.getMonth(); //获取当前月份(0-11,0代表1月)
mydate.getDate(); //获取当前日(1-31)
mydate.getDay(); //获取当前星期X(0-6,0代表星期天)
mydate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
mydate.getHours(); //获取当前小时数(0-23)
mydate.getMinutes(); //获取当前分钟数(0-59)
mydate.getSeconds(); //获取当前秒数(0-59)
mydate.getMilliseconds(); //获取当前毫秒数(0-999)
mydate.toLocaleDateString(); //获取当前日期
var mytime=mydate.toLocaleTimeString(); //获取当前时间
mydate.toLocaleString( ); //获取日期与时间

日期时间脚本库方法列表

Date.prototype.isLeapYear 判断闰年
Date.prototype.Format 日期格式化
Date.prototype.DateAdd 日期计算
Date.prototype.DateDiff 比较日期差
Date.prototype.toString 日期转字符串
Date.prototype.toArray 日期分割为数组
Date.prototype.DatePart 取日期的部分信息
Date.prototype.MaxDayOfDate 取日期所在月的最大天数
Date.prototype.WeekNumOfYear 判断日期所在年的第几周
StringToDate 字符串转日期型
IsValidDate 验证日期有效性
CheckDateTime 完整日期时间检查
daysBetween 日期天数差

//--------------------------------------------------- 
// 判断闰年 
//--------------------------------------------------- Date.prototype.isLeapYear = function() 
{ 
return (0==this.getYear()%4&&((this.getYear()0!=0)||(this.getYear()@0==0))); 
} 
//--------------------------------------------------- 
// 日期格式化 
// 格式 YYYY/yyyy/YY/yy 表示年份 
// MM/M 月份 
// W/w 星期 
// dd/DD/d/D 日期 
// hh/HH/h/H 时间 
// mm/m 分钟 
// ss/SS/s/S 秒 
//--------------------------------------------------- 
Date.prototype.Format = function(formatStr) 
{ 
var str = formatStr; 
var Week = ['日','一','二','三','四','五','六']; 
str=str.replace(/yyyy|YYYY/,this.getFullYear()); 
str=str.replace(/yy|YY/,(this.getYear() % 100)>9?(this.getYear() % 100).toString():'0' + (this.getYear() % 100)); 
str=str.replace(/MM/,this.getMonth()>9?this.getMonth().toString():'0' + this.getMonth()); 
str=str.replace(/M/g,this.getMonth()); 
str=str.replace(/w|W/g,Week[this.getDay()]); 
str=str.replace(/dd|DD/,this.getDate()>9?this.getDate().toString():'0' + this.getDate()); 
str=str.replace(/d|D/g,this.getDate()); 
str=str.replace(/hh|HH/,this.getHours()>9?this.getHours().toString():'0' + this.getHours()); 
str=str.replace(/h|H/g,this.getHours()); 
str=str.replace(/mm/,this.getMinutes()>9?this.getMinutes().toString():'0' + this.getMinutes()); 
str=str.replace(/m/g,this.getMinutes()); 
str=str.replace(/ss|SS/,this.getSeconds()>9?this.getSeconds().toString():'0' + this.getSeconds()); 
str=str.replace(/s|S/g,this.getSeconds()); 
return str; 
} 
//+--------------------------------------------------- 
//| 求两个时间的天数差 日期格式为 YYYY-MM-dd 
//+--------------------------------------------------- 
function daysBetween(DateOne,DateTwo) 
{ 
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-')); 
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1); 
var OneYear = DateOne.substring(0,DateOne.indexOf ('-')); 
var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-')); 
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1); 
var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-')); 
var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000); 
return Math.abs(cha); 
} 
//+--------------------------------------------------- 
//| 日期计算 
//+--------------------------------------------------- 
Date.prototype.DateAdd = function(strInterval, Number) { 
var dtTmp = this; 
switch (strInterval) { 
case 's' :return new Date(Date.parse(dtTmp) + (1000 * Number)); 
case 'n' :return new Date(Date.parse(dtTmp) + (60000 * Number)); 
case 'h' :return new Date(Date.parse(dtTmp) + (3600000 * Number)); 
case 'd' :return new Date(Date.parse(dtTmp) + (86400000 * Number)); 
case 'w' :return new Date(Date.parse(dtTmp) + ((86400000 * 7) * Number)); 
case 'q' :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Number*3, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()); 
case 'm' :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Number, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()); 
case 'y' :return new Date((dtTmp.getFullYear() + Number), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()); 
} 
} 
//+--------------------------------------------------- 
//| 比较日期差 dtEnd 格式为日期型或者 有效日期格式字符串 
//+--------------------------------------------------- 
Date.prototype.DateDiff = function(strInterval, dtEnd) { 
var dtStart = this; 
if (typeof dtEnd == 'string' )//如果是字符串转换为日期型 
{ 
dtEnd = StringToDate(dtEnd); 
} 
switch (strInterval) { 
case 's' :return parseInt((dtEnd - dtStart) / 1000); 
case 'n' :return parseInt((dtEnd - dtStart) / 60000); 
case 'h' :return parseInt((dtEnd - dtStart) / 3600000); 
case 'd' :return parseInt((dtEnd - dtStart) / 86400000); 
case 'w' :return parseInt((dtEnd - dtStart) / (86400000 * 7)); 
case 'm' :return (dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12) - (dtStart.getMonth()+1); 
case 'y' :return dtEnd.getFullYear() - dtStart.getFullYear(); 
} 
} 
//+--------------------------------------------------- 
//| 日期输出字符串,重载了系统的toString方法 
//+--------------------------------------------------- 
Date.prototype.toString = function(showWeek) 
{ 
var myDate= this; 
var str = myDate.toLocaleDateString(); 
if (showWeek) 
{ 
var Week = ['日','一','二','三','四','五','六']; 
str += ' 星期' + Week[myDate.getDay()]; 
} 
return str; 
} 
//+--------------------------------------------------- 
//| 日期合法性验证 
//| 格式为:YYYY-MM-DD或YYYY/MM/DD 
//+--------------------------------------------------- 
function IsValidDate(DateStr) 
{ 
var sDate=DateStr.replace(/(^\s+|\s+$)/g,''); //去两边空格; 
if(sDate=='') return true; 
//如果格式满足YYYY-(/)MM-(/)DD或YYYY-(/)M-(/)DD或YYYY-(/)M-(/)D或YYYY-(/)MM-(/)D就替换为'' 
//数据库中,合法日期可以是:YYYY-MM/DD(2003-3/21),数据库会自动转换为YYYY-MM-DD格式 
var s = sDate.replace(/[\d]{ 4,4 }[\-/]{ 1 }[\d]{ 1,2 }[\-/]{ 1 }[\d]{ 1,2 }/g,''); 
if (s=='') //说明格式满足YYYY-MM-DD或YYYY-M-DD或YYYY-M-D或YYYY-MM-D 
{ 
var t=new Date(sDate.replace(/\-/g,'/')); 
var ar = sDate.split(/[-/:]/); 
if(ar[0] != t.getYear() || ar[1] != t.getMonth()+1 || ar[2] != t.getDate()) 
{ 
//alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。'); 
return false; 
} 
} 
else 
{ 
//alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。'); 
return false; 
} 
return true; 
} 
//+--------------------------------------------------- 
//| 日期时间检查 
//| 格式为:YYYY-MM-DD HH:MM:SS 
//+--------------------------------------------------- 
function CheckDateTime(str) 
{ 
var reg = /^(\d+)-(\d{ 1,2 })-(\d{ 1,2 }) (\d{ 1,2 }):(\d{ 1,2 }):(\d{ 1,2 })$/; 
var r = str.match(reg); 
if(r==null)return false; 
r[2]=r[2]-1; 
var d= new Date(r[1],r[2],r[3],r[4],r[5],r[6]); 
if(d.getFullYear()!=r[1])return false; 
if(d.getMonth()!=r[2])return false; 
if(d.getDate()!=r[3])return false; 
if(d.getHours()!=r[4])return false; 
if(d.getMinutes()!=r[5])return false; 
if(d.getSeconds()!=r[6])return false; 
return true; 
} 
//+--------------------------------------------------- 
//| 把日期分割成数组 
//+--------------------------------------------------- 
Date.prototype.toArray = function() 
{ 
var myDate = this; 
var myArray = Array(); 
myArray[0] = myDate.getFullYear(); 
myArray[1] = myDate.getMonth(); 
myArray[2] = myDate.getDate(); 
myArray[3] = myDate.getHours(); 
myArray[4] = myDate.getMinutes(); 
myArray[5] = myDate.getSeconds(); 
return myArray; 
} 
//+--------------------------------------------------- 
//| 取得日期数据信息 
//| 参数 interval 表示数据类型 
//| y 年 m月 d日 w星期 ww周 h时 n分 s秒 
//+--------------------------------------------------- 
Date.prototype.DatePart = function(interval) 
{ 
var myDate = this; 
var partStr=''; 
var Week = ['日','一','二','三','四','五','六']; 
switch (interval) 
{ 
case 'y' :partStr = myDate.getFullYear();break; 
case 'm' :partStr = myDate.getMonth()+1;break; 
case 'd' :partStr = myDate.getDate();break; 
case 'w' :partStr = Week[myDate.getDay()];break; 
case 'ww' :partStr = myDate.WeekNumOfYear();break; 
case 'h' :partStr = myDate.getHours();break; 
case 'n' :partStr = myDate.getMinutes();break; 
case 's' :partStr = myDate.getSeconds();break; 
} 
return partStr; 
} 
//+--------------------------------------------------- 
//| 取得当前日期所在月的最大天数 
//+--------------------------------------------------- 
Date.prototype.MaxDayOfDate = function() 
{ 
var myDate = this; 
var ary = myDate.toArray(); 
var date1 = (new Date(ary[0],ary[1]+1,1)); 
var date2 = date1.dateAdd(1,'m',1); 
var result = dateDiff(date1.Format('yyyy-MM-dd'),date2.Format('yyyy-MM-dd')); 
return result; 
} 
//+--------------------------------------------------- 
//| 取得当前日期所在周是一年中的第几周 
//+--------------------------------------------------- 
Date.prototype.WeekNumOfYear = function() 
{ 
var myDate = this; 
var ary = myDate.toArray(); 
var year = ary[0]; 
var month = ary[1]+1; 
var day = ary[2]; 
document.write('< script language=VBScript\> \n'); 
document.write('myDate = DateValue(''+month+'-'+day+'-'+year+'') \n'); 
document.write('result = DatePart('ww', myDate) \n'); 
document.write(' \n'); 
return result; 
} 
//+--------------------------------------------------- 
//| 字符串转成日期类型 
//| 格式 MM/dd/YYYY MM-dd-YYYY YYYY/MM/dd YYYY-MM-dd 
//+--------------------------------------------------- 
function StringToDate(DateStr) 
{ 
var converted = Date.parse(DateStr); 
var myDate = new Date(converted); 
if (isNaN(myDate)) 
{ 
//var delimCahar = DateStr.indexOf('/')!=-1?'/':'-'; 
var arys= DateStr.split('-'); 
myDate = new Date(arys[0],--arys[1],arys[2]); 
} 
return myDate; 
}
Javascript 相关文章推荐
经验几则 推荐
Sep 05 Javascript
精通Javascript系列之Javascript基础篇
Jun 07 Javascript
原生javascript实现Tab选项卡切换功能
Jan 12 Javascript
JavaScript字符串常用类使用方法汇总
Apr 14 Javascript
JavaScript设置表单上传时文件个数的方法
Aug 11 Javascript
关于input全选反选恶心的异常情况
Jul 24 Javascript
BootStrap table表格插件自适应固定表头(超好用)
Aug 24 Javascript
通过命令行生成vue项目框架的方法
Jul 12 Javascript
javascript和php使用ajax通信传递JSON的实例
Aug 21 Javascript
create-react-app安装出错问题解决方法
Sep 04 Javascript
微信小程序实现登录注册功能
Dec 29 Javascript
原生JS封装vue Tab切换效果
Apr 28 Vue.js
js简单实现HTML标签Select联动带跳转
Oct 23 #Javascript
JS Date函数整理方便使用
Oct 23 #Javascript
改变文件域的样式实现思路同时兼容ie、firefox
Oct 23 #Javascript
JavaScript instanceof 的使用方法示例介绍
Oct 23 #Javascript
javascript中的=等号个数问题两个跟三个有什么区别
Oct 23 #Javascript
用js来获取上传的文件名纯粹是为了美化而用
Oct 23 #Javascript
ajax与302响应代码测试
Oct 23 #Javascript
You might like
php 服务器调试 Zend Debugger 的安装教程
2009/09/25 PHP
php post json参数的传递和接收处理方法
2018/05/31 PHP
你所要知道JS(DHTML)中的一些技巧
2007/01/09 Javascript
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
2007/04/29 Javascript
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
2011/05/24 Javascript
JavaScript 大数据相加的问题
2011/08/03 Javascript
js查找某元素中的所有图片地址的方法
2014/01/16 Javascript
jQuery获取多种input值的简单实现方法
2016/06/20 Javascript
jQuery 如何实现一个滑动按钮开关
2016/12/01 Javascript
百度地图API之百度地图退拽标记点获取经纬度的实现代码
2017/01/12 Javascript
js实现模糊匹配功能
2017/02/15 Javascript
JavaScript适配器模式详解
2017/10/19 Javascript
JavaScript实现音乐自动切换和轮播
2017/11/05 Javascript
微信小程序—setTimeOut定时器的问题及解决
2019/07/26 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
2019/08/27 Javascript
微信小程序单选框自定义赋值
2020/05/26 Javascript
vue实现移动端拖动排序
2020/08/21 Javascript
简单介绍Python中的decode()方法的使用
2015/05/18 Python
在Python中操作文件之read()方法的使用教程
2015/05/24 Python
django 开发忘记密码通过邮箱找回功能示例
2018/04/17 Python
基于Django框架利用Ajax实现点赞功能实例代码
2018/08/19 Python
Python实现九宫格式的朋友圈功能内附“马云”朋友圈
2019/05/07 Python
浅谈Python中的异常和JSON读写数据的实现
2020/02/27 Python
win7上tensorflow2.2.0安装成功 引用DLL load failed时找不到指定模块 tensorflow has no attribute xxx 解决方法
2020/05/20 Python
详解Python 函数参数的拆解
2020/09/02 Python
Python之qq自动发消息的示例代码
2021/02/18 Python
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
运动会领导邀请函
2014/02/05 职场文书
技能比赛获奖感言
2014/02/14 职场文书
销售经理岗位职责
2014/03/16 职场文书
环保项目建议书
2014/08/26 职场文书
慈善捐赠倡议书
2014/08/30 职场文书
党员转正大会主持词
2015/07/02 职场文书
2019年员工旷工保证书!
2019/06/28 职场文书
个人自我鉴定怎么写?
2019/07/01 职场文书
python 下载文件的几种方式分享
2021/04/07 Python