JavaScript 时间格式化方法总结

前端时间格式化方法总结

在工作的时候经常会因为时间格式问题经常需要转化时间,在这我把一些时间格式化方法总结供大家使使用,供大家参考

1.获取当前时间戳

var timestamp = Date.parse(new  Date()); //精确到秒
var timestamp = new Date().getTime(); //精确到毫秒
var timestamp = Date.now();

2.获取指定时间戳

var timestamp = (new Date(" 2015/11/25 08:00:00")).getTime();
var timestamp = (new Date(" 2015-11-25 08:00:00")).getTime();

3.获取当前时间的前一天/后一天的时间戳

var timestamp = new Date() - 24*60*60*1000;
var timestamp = new Date() + 24*60*60*1000;

4.今日零点时间戳

var timestamp = new Date(new Date().toLocaleDateString()).getTime();

5.今日最晚时间 23:59:59的时间戳

let timestamp = new Date(new Date().toLocaleDateString()).getTime()+24*60*60*1000-1;

6.获取当前时间的n天后的时间戳

/**
 * @param {number} n 天数
 * @returns {Number} 返回值为时间毫秒值
 */
function toNextTimes(n){
    let timestamp = +new Date() + n * 86400000;
    return timestamp;
}

7.本周第一天

/***
 *  @return {*} WeekFirstDay 返回本周第一天的时间
 */
function WeekFirstDay(){
    let Nowdate=new Date();
    let WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
    return WeekFirstDay;
}

8.本周最后一天

/***
 *  @return {*} WeekLastDay 返回本周最后一天的时间
 */
function WeekLastDay(){
    let Nowdate=new Date();
    let WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
    let WeekLastDay=new Date((WeekFirstDay/1000+6*86400)*1000);
    return WeekLastDay;
}

9.本月第一天

/***
 *  @return {*} MonthFirstDay 返回本月第一天的时间
 */
function MonthFirstDay(){
    let Nowdate=new Date();
    let MonthFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth());
    return MonthFirstDay;
}

10.本月最后一天

/***
 *  @return MonthLastDay 返回本月最后一天的时间
 */
function MonthLastDay(){
    let Nowdate=new Date();
    let MonthNextFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth()+1);
    let MonthLastDay=new Date(MonthNextFirstDay-86400000);
    return MonthLastDay;
}

11.日期转时间戳

/**
 * @param {String} eg:2020/05/06
 * @returns {Number} 返回值为时间毫秒值
 */
function timeToTimestamp (time) {
    let date = new Date(time);
    let timestamp = date.getTime();
    return timestamp;
}

12.时间戳转日期

/**
 * @param {String} eg:1599615410
 * @returns {Number} 2020-9-9 9:36:50
 */
function time (time) {
    str = parseInt(phpstr)*1000;
    let newDate = new Date(str);
    let year = newDate.getUTCFullYear();//取年份
    let month = newDate.getUTCMonth()+1;//取月份
    let nowday = newDate.getUTCDate();//取天数
    let hours = newDate.getHours();//取小时
	let minutes = newDate.getMinutes();//取分钟
	let seconds = newDate.getSeconds();//取秒
	return year+"-"+month+"-"+nowday+" "+hours+":"+minutes+":"+seconds;
}

12.自动获取下个月

/**
 * return 不带前导0的获取下个月日期
 */
function getYm(){
  let now = new Date();
  let month = now.getMonth()+1;
  let year  = now.getFullYear();
  if ( month === 12 ) {
    year += 1;
    month = '1';
  } else {
    month += 1;
    month = (month < 10) ? ''+month : month;
  }
  return year+"-"+month;
}

目前整理出来这些供大家使用参考,欢迎大家留言评论。日后续更

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值