
js计算时间
//JavaScriptDocumentfunctioncheck_tdate(odate){varcheckArray=newArray();//nowArray=od...
// JavaScript Document
function check_tdate(odate){
var checkArray= new Array() ;
//nowArray = odate.split(" ");
checkArray = odate.split("-");
checkDate = new Date(checkArray[0],checkArray[1],checkArray[2]);
var nowTime = new Date();// 现在时间
var the_year = nowTime.getYear();
var the_month = nowTime.getMonth() + 1;
var the_day = nowTime.getDate();
nowTime = new Date(the_year,the_month,the_day);
var thesecond = 24 * 60 * 60 *1000 ;
var diffTime = (nowTime - checkDate)/thesecond;//计算天数
if (diffTime>0)
{
myreturn ="<div style='position:absolute;z-index:100;margin-left:150px;'><img src=../../../images/guoqi.gif></div>";
}
else if (diffTime==0)
{
myreturn = '';
}
if (diffTime<0)
{
myreturn ="<div style='position:absolute;z-index:100;margin-left:150px;'>在这里我想输出离过期还有几天几小时 不知道该如何写</div>";
}
else
{
diffTime=0-diffTime;
myreturn = '';
}
//alert(myreturn);
document.write(''+myreturn+'')
} 展开
function check_tdate(odate){
var checkArray= new Array() ;
//nowArray = odate.split(" ");
checkArray = odate.split("-");
checkDate = new Date(checkArray[0],checkArray[1],checkArray[2]);
var nowTime = new Date();// 现在时间
var the_year = nowTime.getYear();
var the_month = nowTime.getMonth() + 1;
var the_day = nowTime.getDate();
nowTime = new Date(the_year,the_month,the_day);
var thesecond = 24 * 60 * 60 *1000 ;
var diffTime = (nowTime - checkDate)/thesecond;//计算天数
if (diffTime>0)
{
myreturn ="<div style='position:absolute;z-index:100;margin-left:150px;'><img src=../../../images/guoqi.gif></div>";
}
else if (diffTime==0)
{
myreturn = '';
}
if (diffTime<0)
{
myreturn ="<div style='position:absolute;z-index:100;margin-left:150px;'>在这里我想输出离过期还有几天几小时 不知道该如何写</div>";
}
else
{
diffTime=0-diffTime;
myreturn = '';
}
//alert(myreturn);
document.write(''+myreturn+'')
} 展开
1个回答
展开全部
这两句有问题,Date对象不能这样相减吧?
var diffTime = (nowTime - checkDate)/thesecond;
diffTime=0-diffTime;
应该这样
var diffTime =nowTime.getTime() - checkDate.getTime();
得到差值后,判断正负这些就不多说了,说一下怎么获得这个差值是多少天、小时、分钟和秒。
注:下面的dTime是 new Date(diffTime);
天数可以用你上面的方法计算得到,不过你那方法没有取整。取整的话,就是这样:
var dDays = parseInt(dTime.getTime() / 3600 * 24 * 1000);
然后就剩下时分秒了,我们注意到,new Date(0)是"Thu Jan 01 1970 08:00:00 GMT+0800",所以再减去八个钟就是 1970年1月1日 零时了。所以将上面的diffTime减去八个钟的毫秒数再放到new Date()里面,再获取到的时分秒就是剩余的时间了:
var dHours = dTime.getHours();
var dMinutes =dTime.getMinutes();
var dSeconds = dTime.getSeconds();
你可以看下我的另一个回答
http://zhidao.baidu.com/question/135976703.html
var diffTime = (nowTime - checkDate)/thesecond;
diffTime=0-diffTime;
应该这样
var diffTime =nowTime.getTime() - checkDate.getTime();
得到差值后,判断正负这些就不多说了,说一下怎么获得这个差值是多少天、小时、分钟和秒。
注:下面的dTime是 new Date(diffTime);
天数可以用你上面的方法计算得到,不过你那方法没有取整。取整的话,就是这样:
var dDays = parseInt(dTime.getTime() / 3600 * 24 * 1000);
然后就剩下时分秒了,我们注意到,new Date(0)是"Thu Jan 01 1970 08:00:00 GMT+0800",所以再减去八个钟就是 1970年1月1日 零时了。所以将上面的diffTime减去八个钟的毫秒数再放到new Date()里面,再获取到的时分秒就是剩余的时间了:
var dHours = dTime.getHours();
var dMinutes =dTime.getMinutes();
var dSeconds = dTime.getSeconds();
你可以看下我的另一个回答
http://zhidao.baidu.com/question/135976703.html
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询