走过时间、时间戳、日期的坑

10 篇文章 1 订阅
9 篇文章 1 订阅

获取当前时间一个小时每隔5分钟的时间数组

function getDateArray(endDate, splitTime, count) {
  if(!endDate) {
    endDate = new Date();  // 输入标准时间
  }
  if(!splitTime) {
    splitTime = 5 * 60 * 1000;
  }
  if(!count) {
    count= 12;
  }
  var endTime = endDate.getTime();
  var mod = endTime % splitTime;
  if(mod > 0) {
    endTime -= mod; 
  }
  var dateArray = [];
  while(count-- > 0) {
    var d = new Date();
    d.setTime(endTime - count * splitTime);
    dateArray.push(d);
  }
  return dateArray;
}
 
var a = getDateArray();
alert(a.length)
for(var i in a) {
  alert(a[i]);
}

获取24小时内每隔1分钟的时间数组


function getDateArray(endDate, splitTime, count) {
   if (!endDate) {
       endDate = new Date('2019-03-27 23:59:00');
   }
   if (!splitTime) {
       splitTime = 60 * 1000;
   }
   if (!count) {
       count = 1440;
   }
   var endTime = endDate.getTime();
   var mod = endTime % splitTime;
   if (mod > 0) {
       endTime -= mod;
   }
   var dateArray = [];
   while (count-- > 0) {
       var d = new Date();
       d.setTime(endTime - count * splitTime);
       dateArray.push(checkTime(d.getHours()) + ':' + checkTime(d.getMinutes()) + ":00");
   }
   return dateArray;
}
//小时、分钟小于10时补上前面的0
function checkTime(i) {
   if (i < 10) {
       i = "0" + i;
   }
   return i;
} 

时间与时间戳互相转化

1.时间转时间戳
var date = new Date('2019-03-27 16:00')

// 1. 只能精确到秒,毫秒用000替代
var time1 = Date.parse(date) // 1553673600000
 
 //2、3能够精确到毫秒
 var time2 = date.getTime() // 1553673600000
 var time3 = date.valueOf() // 1553673600000
2.时间戳转时间
function timestampToTime(timestamp) {
        var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
        var Y = date.getFullYear() + '-';
        var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
        var D = date.getDate() + ' ';
        var h = date.getHours() + ':';
        var m = date.getMinutes() + ':';
        var s = date.getSeconds();
        return Y+M+D+h+m+s;
    }
    timestampToTime(1403058804);
    console.log(timestampToTime(1403058804));//2014-06-18 10:33:24

3.时间戳转化成日期

function getLocalTime(timestamp) {
    var date = new Date();
    date.setTime(timestamp * 1000);
    var y = date.getFullYear();
    var m = date.getMonth() + 1;
    m = m < 10 ? ('0' + m) : m;
    var d = date.getDate();
    d = d < 10 ? ('0' + d) : d;
    var h = date.getHours();
    h = h < 10 ? ('0' + h) : h;
    var minute = date.getMinutes();
    var second = date.getSeconds();
    minute = minute < 10 ? ('0' + minute) : minute;
    second = second < 10 ? ('0' + second) : second;
    return   y +  '-' + m + '-' + d+' '+h+':'+minute;
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值