A. js倒计时精确到毫秒
Js获取当前日期时间及其它操作
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 日期天数差
B. 如何实现时间戳转换
以前遇到过一个关于时间戳的问题,为了不被大家鄙视,先说一下概念。
具体时间戳怎么定义的我也不清楚,但网络中有这么一句:“时间戳是自 1970 年 1 月 1 日(00:00:00 GMT)至当前时间的总秒数”。
按这个定义,编程语言中倒是有一种类似的函数,getTime(),但这个函数返回的是自1970年1月1日到当前时间的总 毫秒数 ,而不是总 秒数。
在js中,将一个字符转化成Date型也不是什么难事:
var str = '2013-08-30'; // 日期字符串
str = str.replace(/-/g,'/'); // 将-替换成/,因为下面这个构造函数只支持/分隔的日期字符串
var date = new Date(str); // 构造一个日期型数据,值为传入的字符串
在上面,new Date(str)构造了一个日期,参数str至少要提供年月日三部分,也就是形如“2013/03/08”的字符串,不能是"2013/03",否则将得到一个NaN。此时构造出来的时间是:2013/03/08 00:00:00。同时你还可以传入小时、分钟和秒数,但不能只传入小时,比如“2013/03/08 17”,这样的参数同样会得到一个NaN。参数可以是“2013/03/08 17:20”或者“2013/03/08 17:20:05”,这样都可以得到正确的时间,其中如果秒数没给出,则默认为0。
此时得到的是日期型数据,如果要得到上面所谓的时间戳,可以这样:
var time = date.getTime();
这样得到的是一个数值,表示的是从1970年1月1日0点0分0秒到date那一刻的毫秒数,如果把这个数字除以1000,就得到了秒数,同样继续除以60,得到分钟,再除以60得到小时等等。
提示,通过这个getTime()函数,你可以得到两个日期的毫秒数,继而转化成秒数、分钟、小时甚至天数,比较两个日期的差值。
C. js日期相减求天数 精确到秒
java">
varmyDate=newDate();
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();//获取当前日期
varmytime=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)
{
varstr=formatStr;
varWeek=['日','一','二','三','四','五','六'];
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());
returnstr;
}
//+---------------------------------------------------
//|求两个时间的天数差日期格式为YYYY-MM-dd
//+---------------------------------------------------
functiondaysBetween(DateOne,DateTwo)
{
varOneMonth=DateOne.substring(5,DateOne.lastIndexOf('-'));
varOneDay=DateOne.substring(DateOne.length,DateOne.lastIndexOf('-')+1);
varOneYear=DateOne.substring(0,DateOne.indexOf('-'));
varTwoMonth=DateTwo.substring(5,DateTwo.lastIndexOf('-'));
varTwoDay=DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf('-')+1);
varTwoYear=DateTwo.substring(0,DateTwo.indexOf('-'));
varcha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)-Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
returnMath.abs(cha);
}
//+---------------------------------------------------
//|日期计算
//+---------------------------------------------------
Date.prototype.DateAdd=function(strInterval,Number){
vardtTmp=this;
switch(strInterval){
case's':returnnewDate(Date.parse(dtTmp)+(1000*Number));
case'n':returnnewDate(Date.parse(dtTmp)+(60000*Number));
case'h':returnnewDate(Date.parse(dtTmp)+(3600000*Number));
case'd':returnnewDate(Date.parse(dtTmp)+(86400000*Number));
case'w':returnnewDate(Date.parse(dtTmp)+((86400000*7)*Number));
case'q':returnnewDate(dtTmp.getFullYear(),(dtTmp.getMonth())+Number*3,dtTmp.getDate(),dtTmp.getHours(),dtTmp.getMinutes(),dtTmp.getSeconds());
case'm':returnnewDate(dtTmp.getFullYear(),(dtTmp.getMonth())+Number,dtTmp.getDate(),dtTmp.getHours(),dtTmp.getMinutes(),dtTmp.getSeconds());
case'y':returnnewDate((dtTmp.getFullYear()+Number),dtTmp.getMonth(),dtTmp.getDate(),dtTmp.getHours(),dtTmp.getMinutes(),dtTmp.getSeconds());
}
}
//+---------------------------------------------------
//|比较日期差dtEnd格式为日期型或者有效日期格式字符串
//+---------------------------------------------------
Date.prototype.DateDiff=function(strInterval,dtEnd){
vardtStart=this;
if(typeofdtEnd=='string')//如果是字符串转换为日期型
{
dtEnd=StringToDate(dtEnd);
}
switch(strInterval){
case's':returnparseInt((dtEnd-dtStart)/1000);
case'n':returnparseInt((dtEnd-dtStart)/60000);
case'h':returnparseInt((dtEnd-dtStart)/3600000);
case'd':returnparseInt((dtEnd-dtStart)/86400000);
case'w':returnparseInt((dtEnd-dtStart)/(86400000*7));
case'm':return(dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12)-(dtStart.getMonth()+1);
case'y':returndtEnd.getFullYear()-dtStart.getFullYear();
}
}
//+---------------------------------------------------
//|日期输出字符串,重载了系统的toString方法
//+---------------------------------------------------
Date.prototype.toString=function(showWeek)
{
varmyDate=this;
varstr=myDate.toLocaleDateString();
if(showWeek)
{
varWeek=['日','一','二','三','四','五','六'];
str+='星期'+Week[myDate.getDay()];
}
returnstr;
}
//+---------------------------------------------------
//|日期合法性验证
//|格式为:YYYY-MM-DD或YYYY/MM/DD
//+---------------------------------------------------
functionIsValidDate(DateStr)
{
varsDate=DateStr.replace(/(^s+|s+$)/g,'');//去两边空格;
if(sDate=='')returntrue;
//如果格式满足YYYY-(/)MM-(/)DD或YYYY-(/)M-(/)DD或YYYY-(/)M-(/)D或YYYY-(/)MM-(/)D就替换为''
//数据库中,合法日期可以是:YYYY-MM/DD(2003-3/21),数据库会自动转换为YYYY-MM-DD格式
vars=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
{
vart=newDate(sDate.replace(/-/g,'/'));
varar=sDate.split(/[-/:]/);
if(ar[0]!=t.getYear()||ar[1]!=t.getMonth()+1||ar[2]!=t.getDate())
{
//alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。');
returnfalse;
}
}
else
{
//alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。');
returnfalse;
}
returntrue;
}
//+---------------------------------------------------
//|日期时间检查
//|格式为:YYYY-MM-DDHH:MM:SS
//+---------------------------------------------------
functionCheckDateTime(str)
{
varreg=/^(d+)-(d{1,2})-(d{1,2})(d{1,2}):(d{1,2}):(d{1,2})$/;
varr=str.match(reg);
if(r==null)returnfalse;
r[2]=r[2]-1;
vard=newDate(r[1],r[2],r[3],r[4],r[5],r[6]);
if(d.getFullYear()!=r[1])returnfalse;
if(d.getMonth()!=r[2])returnfalse;
if(d.getDate()!=r[3])returnfalse;
if(d.getHours()!=r[4])returnfalse;
if(d.getMinutes()!=r[5])returnfalse;
if(d.getSeconds()!=r[6])returnfalse;
returntrue;
}
//+---------------------------------------------------
//|把日期分割成数组
//+---------------------------------------------------
Date.prototype.toArray=function()
{
varmyDate=this;
varmyArray=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();
returnmyArray;
}
//+---------------------------------------------------
//|取得日期数据信息
//|参数interval表示数据类型
//|y年m月d日w星期ww周h时n分s秒
//+---------------------------------------------------
Date.prototype.DatePart=function(interval)
{
varmyDate=this;
varpartStr='';
varWeek=['日','一','二','三','四','五','六'];
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;
}
returnpartStr;
}
//+---------------------------------------------------
//|取得当前日期所在月的最大天数
//+---------------------------------------------------
Date.prototype.MaxDayOfDate=function()
{
varmyDate=this;
varary=myDate.toArray();
vardate1=(newDate(ary[0],ary[1]+1,1));
vardate2=date1.dateAdd(1,'m',1);
varresult=dateDiff(date1.Format('yyyy-MM-dd'),date2.Format('yyyy-MM-dd'));
returnresult;
}
//+---------------------------------------------------
//|取得当前日期所在周是一年中的第几周
//+---------------------------------------------------
Date.prototype.WeekNumOfYear=function()
{
varmyDate=this;
varary=myDate.toArray();
varyear=ary[0];
varmonth=ary[1]+1;
varday=ary[2];
document.write('<scriptlanguage=VBScript>
');
document.write('myDate=Datue(''+month+'-'+day+'-'+year+'')
');
document.write('result=DatePart('ww',myDate)
');
document.write('
');
returnresult;
}
//+---------------------------------------------------
//|字符串转成日期类型
//|格式MM/dd/YYYYMM-dd-YYYYYYYY/MM/ddYYYY-MM-dd
//+---------------------------------------------------
functionStringToDate(DateStr)
{
varconverted=Date.parse(DateStr);
varmyDate=newDate(converted);
if(isNaN(myDate))
{
//vardelimCahar=DateStr.indexOf('/')!=-1?'/':'-';
vararys=DateStr.split('-');
myDate=newDate(arys[0],--arys[1],arys[2]);
}
returnmyDate;
}
若要显示:当前日期加时间(如:2009-06-1212:00)
functionCurentTime()
{
varnow=newDate();
varyear=now.getFullYear();//年
varmonth=now.getMonth()+1;//月
varday=now.getDate();//日
varhh=now.getHours();//时
varmm=now.getMinutes();//分
varclock=year+"-";
if(month<10)
clock+="0";
clock+=month+"-";
if(day<10)
clock+="0";
clock+=day+"";
if(hh<10)
clock+="0";
clock+=hh+":";
if(mm<10)clock+='0';
clock+=mm;
return(clock);
}
这是我博客里的一篇文章。上边有清晰的思路。你自己改改。
D. js如何去当前时间前一天的时间
1、使用new Date()获取当前日期,new Date().getTime()获取当前毫秒数
2、计算公式,等于获取的当前日期减去或者加上一天的毫秒数。一天的毫秒数的计算公式:24小时*60分钟*60秒*1000毫秒,也是86400000毫秒。
举例:
Date curDate = new Date();
var preDate = new Date(curDate.getTime() - 24*60*60*1000); //前一天
var nextDate = new Date(curDate.getTime() + 24*60*60*1000); //后一天
以下图片使用后台输出表示。
(4)jsstringtodata扩展阅读
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 日期天数差
E. 我要用JS写个判断时间的操作 就是去判断今天是否过了 ,用系统时间去和00:00:00比较(时分秒)
<script language=JavaScript>
var timerID = null;
var timerRunning = false;
function stopclock (){
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;}
function startclock () {
stopclock();
showtime();}
function showtime () {
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds()
var timeValue = "" +((hours >= 12) ? "下午 " : "上午 " )
timeValue += ((hours >12) ? hours -12 :hours)
timeValue += ((minutes < 10) ? ":0" : ":") + minutes
timeValue += ((seconds < 10) ? ":0" : ":") + seconds
document.clock.thetime.value = timeValue;
timerID = setTimeout("showtime()",1000);
timerRunning = true;}
</SCRIPT>
F. js日期转换成字符串
<scripttype="text/javascript">
varnow=newDate();
varyear=now.getFullYear();
varmonth=(now.getMonth()+1).toString();
varday=(now.getDate()).toString();
if(month.length==1){
month="0"+month;
}
if(day.length==1){
day="0"+day;
}
vardateTime=year+month+day;
document.write(dateTime);
</script>
G. js 中怎么获取当前系统时间
系统时间一般是值服务端时间,js获取服务端时间的方法是直接用获取。
编写显示时间的页面:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Server date/time</title>
<script language="javascript" src="serverDate.js"></script>
</head>
<script language="javascript">
var localTime = new Date();
document.write("Local machine time is: " + localTime + "<br>");
document.write("Server time is: " + date);
</script>
<body>
</body>
ajax脚本获取server的时间
var xmlHttp;
function srvTime(){
try {
//创建xmlHttp对象
xmlHttp = new XMLHttpRequest();
}
catch (err1) {
//ie浏览器
try {
xmlHttp = new ActiveXObject('Msxml2.XMLHTTP');
}
catch (err2) {
try {
xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
}
catch (eerr3) {
//ajax不支持
alert("AJAX not supported");
}
}
}
//打开xmlHttp请求
xmlHttp.open('HEAD',window.location.href.toString(),false);
//设置xmlHttp请求头
xmlHttp.setRequestHeader("Content-Type", "text/html");
//发送请求
xmlHttp.send('');
// 获取response中的Date参数
return xmlHttp.getResponseHeader("Date");
}
var st = srvTime(); //服务器时间赋值给st变量
var date = new Date(st); //转换js的date对象
// 输出服务器时间
document.write("服务器时间: " + date);
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
语句:JavaScript程序是由若干语句组成的,语句是编写程序的指令。JavaScript提供了完整的基本编程语句,
它们是:赋值语句、switch选择语句、while循环语句、for循环语句、for each循环语句、do...while循环语句、break循环中止语句、continue循环中断语句、with语句、try…catch语句、if语句(if..else,if…else if…)。