JS new Date()(获取当天、最近某段时间起止时间戳)

1 篇文章 0 订阅
1 篇文章 0 订阅
获取任意一天0点和24点时间戳
function getTimeStamp(dayNum: number, isStart: boolean = true) {
  if (isStart) return new Date(new Date().setDate(new Date().getDate() - (dayNum - 1))).setHours(0,0,0,0);
  return new Date(new Date().setDate(new Date().getDate() - (dayNum - 1))).setHours(23, 59, 59, 999);
}
前端常见的日期的几种格式
const time = new Date();
console.log(time);						// Thu Jan 13 2022 10:15:19 GMT+0800 (中国标准时间)
console.log(time.toDateString());		// Thu Jan 13 2022
console.log(time.toTimeString());		// 10:15:19 GMT+0800 (中国标准时间)
console.log(time.toJSON());				// 2022-01-13T02:15:19.648Z
console.log(time.toISOString());		// 2022-01-13T02:15:19.648Z
console.log(time.toLocaleDateString());	// 2022/1/13
console.log(time.toLocaleString());		// 2022/1/13 上午10:15:19
console.log(time.toLocaleTimeString());	// 上午10:15:19
console.log(time.toString());			// Thu Jan 13 2022 10:15:19 GMT+0800 (中国标准时间)
console.log(time.getTime());			// 1642040119648
console.log(time.valueOf());			// 1642040119648

// 使用Date.UTC方法创建日期对象
//  参数: f(year, month, ?date, ?hours, ?monutes, ?seconds, ?ms)
// 返回 1970 年 1 月 1 日 到指定日期的毫秒数
const time2 = Date.UTC(2019,12,18);
获取当天、最近七天、最近一月、最近 一季度起止时间戳
const nowTime = new Date();
const todayStart = new Date(nowTime.toDateString()).getTime();
const todayEnd = new Date(nowTime.toDateString()).getTime() + 3600 * 1000 * 24 - 1;
const lastWeek = nowTime.getTime() - 3600 * 1000 * 24 * 7;
const lastMonth = nowTime.getTime() - 3600 * 1000 * 24 * 30;
const lastThreeMonth = nowTime.getTime() - 3600 * 1000 * 24 * 90;
计算两个时间点的间隔
var str = '2018-07-01T00:00:00.000Z'
var d1 = new Date(str)	//	时间点1,字符串转为日期对象
var d2 = new Date()		//	时间点2
var a = d2.getTime() - d1.getTime()

//	一般会用到定时器刷新时间(在合适地方进行定时刷新)
var timer = setInterval(function(){
	console.log(new Date())
},2000)
//	清除定时器
clearInterval(timer)
前端获取当前年份、月份等等
const d = new Date();
console.log(d.getFullYear())		//  2022
console.log(d.getMonth())			//  0 (0-11、0是一月)
console.log(d.getDate())			//  13 (1-31)
console.log(d.getDay())				//  4 (0-6、0是周日)
console.log(d.getHours())			//  10
console.log(d.getMinutes())			//  40
console.log(d.getSeconds())			//  53
console.log(d.getMilliseconds())	//  900 (0-999)

console.log(d.getTimezoneOffset())	// -480(本地时间与格林威治标准时间 (GMT) 的分钟差)
console.log(d.getUTCFullYear())		//  2022
console.log(d.getUTCMonth())		//  0 (0-11、0是一月)
console.log(d.getUTCDate())			//  13 (1-31)
console.log(d.getUTCDay())			//  4 (0-6、0是周日)
console.log(d.getUTCHours())		//  2
console.log(d.getUTCMinutes())		//  49
console.log(d.getUTCSeconds())		//  56
console.log(d.getUTCMilliseconds())	//  556 (0-999)
修改时间
const d = new Date();
d.setFullYear(2050)
d.setMonth(0)				// (0-11)
d.setDate(13)				// d.setDate(60)   // 超过30天月份会自动折算
d.setHours(10)
d.setMinutes(50)
d.setSeconds(50)			// (0-59)
d.setMilliseconds(800)		// (0-999)
d.setTime(1649286122272)	// 毫秒时间戳

// 格林威治不再赘述	d.setUTCxxx()
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值