js时间相关操作

1 篇文章 0 订阅
1 篇文章 0 订阅

主要内容:

1,格式化当前时间,返回当前时间 

2,计算距离某天的倒计时,时间转时间戳,日期转时间戳

3,限时抢购倒计时设计

 

1,格式化当前时间

//返回值是格式化后的时间,修改return可以按自定义格式返回
function getNowDate(){
  var da = new Date();
  var trade =da.getFullYear();
  var mt =da.getMonth() + 1 >10 ? da.getMonth() + 1 : "0"+(da.getMonth() + 1);
  var dt =da.getDate()  >=10 ? da.getDate()  : "0"+da.getDate();
  var dh =da.getHours()  >=10 ? da.getHours()  : "0"+da.getHours();
  var dm =da.getMinutes()  >=10 ? da.getMinutes()  : "0"+da.getMinutes();
  var ds =da.getSeconds()  >=10 ? da.getSeconds()  : "0"+da.getSeconds();
  return  trade+="/"+mt+"/"+dt+" "+dh+":"+dm+":"+ds;
}

2,计算距离某天的倒计时

原理:利用输入的日期按时间戳的方式计算倒计时

注意:移动端不支持2016-01-01格式,仅支持2016/01/01

//计算某天的倒计时
function getDateCutdown(datestr){
 // 获取当前时间戳(以s为单位)
 var timestamp = Date.parse(new Date());
 timestamp = timestamp / 1000;  
 // 获取某天的时间戳
var stringTime =datestr;
var timestamp2 = Date.parse(new Date(stringTime));
timestamp2 = timestamp2 / 1000;  
//计算日期
var chazghi = timestamp2-timestamp;
var cd =  parseInt(chazghi/(24*60*60));
var dy =  chazghi%(24*60*60);
//计算小时
var ct = parseInt(dy/(60*60));
var ty = dy%(60*60);
//计算分
var cm = parseInt(ty/60);
var my = ty%60;
//返回对象d=天,h=时,m=分,s=秒
return obj={
 "d":cd,
 "h":ct,
 "m":cm,
 "s":my
 }  
}
//调用:
var stringTime = "2016/8/26 11:00:00";
console.log(getDateCutdown(stringTime));

3,限时抢购倒计时设计

<style>
#countDown span{
  width: 25px;
  height: 25px;
  background-color: #000000;
  color: white;
  padding: 0 2px;
}
</style>
<div id="countDown" style="margin-top: 5px;"> 
  <span>23</span> :
  <span>59</span> :
  <span>59</span>
</div>
countDown()
 function countDown(){
  var datearr = getDate();
  cdshow("all",datearr);
  setInterval(function(){
  datearr[2]--;
  cdshow("second",datearr);
  //秒针判断
  if(datearr[2] <0){
   datearr[2]=59;
   datearr[1]--; 
   cdshow("second",datearr);
   cdshow("minute",datearr);
 //分钟判断       
     if(datearr[1]<0){
      datearr[1]=59;
      datearr[0]--;  
      $("#countDown span:nth-child(2)").html(datearr[1]);
      cdshow("hour",datearr); 
        //时针判断
         if(datearr[0]<0){
          datearr=[23,59,59];
            //倒计时结束,可以在这里执行结束动作
               //回到初始
          cdshow("all",datearr);
         }       
      }
  } 
 },1000);     
}
//dom操作
function cdshow(dom,datearr){
 if(dom == "all"){
  if(datearr[2]<10){      
        $("#countDown span:nth-child(3)").html("0"+datearr[2]);
  }else{
        $("#countDown span:nth-child(3)").html(datearr[2]);
  }
  if(datearr[1]<10){      
   $("#countDown span:nth-child(2)").html("0"+datearr[1]);
  }else{
   $("#countDown span:nth-child(2)").html(datearr[1]);
  }
  if(datearr[0]<10){      
    $("#countDown span:nth-child(1)").html("0"+datearr[0]);
  }else{
    $("#countDown span:nth-child(1)").html(datearr[0]);
  } 
}else if(dom == "second"){
 if(datearr[2]<10){      
  $("#countDown span:nth-child(3)").html("0"+datearr[2]);
 }else{
  $("#countDown span:nth-child(3)").html(datearr[2]);
 }
}else if(dom =="minute"){
  if(datearr[1]<10){      
      $("#countDown span:nth-child(2)").html("0"+datearr[1]);
  }else{
       $("#countDown span:nth-child(2)").html(datearr[1]);
  }
}else if(dom == "hour"){
  if(datearr[0]<10){      
       $("#countDown span:nth-child(1)").html("0"+datearr[0]);
  }else{
        $("#countDown span:nth-child(1)").html(datearr[0]);
   } 
 }      
}
//获取时间
function getDate(){  
 var da = new Date();
 var dh =(24-da.getHours()) 
 var dm =(60-da.getMinutes()) == 60 ? 0 : (60-da.getMinutes());
 var ds =(60-da.getSeconds()) == 60 ? 0 : (60-da.getSeconds());
 var temarr = [dh,dm,ds];
 return temarr;
}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值