下面小编就为大家分享一篇JS获取当天、最近某段时间起止时间戳,具有很好的参考价值,希望对大家有所帮助。
获取任意一天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()
本站部分内容转载自互联网,如果有网站内容侵犯了您的权益,可直接联系我们删除,感谢支持!