zoukankan
html css js c++ java
Js获取当前日期时间及其它操作
24var 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 日期天数差
js代码:
//---------------------------------------------------
// 判断闰年
//---------------------------------------------------
Date.prototype.isLeapYear =
function
()
{
return
(0==
this
.getYear()%4&&((
this
.getYear()%100!=0)||(
this
.getYear()%400==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;
}
实际页面应用
function
display() {
var
weekName=
new
Array(
"日"
,
"一"
,
"二"
,
"三"
,
"四"
,
"五"
,
"六"
);
//将中文星期表示方法保存在数组weekName中
var
today=
new
Date();
//以当前时间和日期来创建DATE对象 var time=today.toLocaleString();//按本地计算机设置获取当前系统日期及时间
var
week=weekName[today.getDay()];//
获取当前日期对应的中文星期;
var
listdate=
"当前操作员:【"
+
''
+
"】"
+
''
+
""
+
"当前时间:"
+time+
" 星期"
+week;
//定义显示方式
document.getElementById(
"clock"
).innerHTML=listdate; setTimeout(
"display()"
,1000);
//每一秒重新运行一下DISPLAY() }
查看全文
相关阅读:
django的信号
网络安全
网络干货,无论是运维还是开发都要知道的网络知识系列之(九)
一些职场的忠告
自动化测试如何解决验证码的问题
通过python切换hosts文件
【转】web常见安全问题以及测试方法
【转】做好软件测试需要具备的思维方式
【转】创业泡沫的「军功章」,高薪低能的程序员要分走一半
【转】黑盒测试中的一些小经验分享
原文地址:https://www.cnblogs.com/1011004519/p/1441842.html
最新文章
修改Nginx的header伪装服务器
Nginx隐藏主机信息,proxy_hide_header 与fastcgi_hide_header
Nginx 下部署 HTTPS 与安全调优
常见分布式存储文件系统
ASP.NET对路径"C:/......."的访问被拒绝 解决方法小结 [转载]
C# CLR20R3 程序终止的几种解决方案 【转】
C# 截获某个域中未捕获的异常 CLR20R3 程序终止的几种解决方案
解决WebClient或HttpWebRequest首次连接缓慢问题
(error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk.
WCF 出现System.Core version 2.0.5.0 未能加载问题
热门文章
WCF 内存入口检查失败 Memory gates checking failed
Guid ToString 格式
ffmpeg mp4 to wmv and wmv to mp4
使用ffmpeg来转换media Video
Python:设计模式介绍--单例模式
爬虫
django的ajax对应前端的瀑布流方法
django 的文件上传
django的views里面的request对象详解大全
Python里*arg 和**kwargs的作用
Copyright © 2011-2022 走看看