gpt4 book ai didi

javascript - 如何根据 Javascript 中的 unix 时间戳以编程方式确定之前的时间段?

转载 作者:行者123 更新时间:2023-11-29 19:10:49 27 4
gpt4 key购买 nike

基本上我有两个 unix 时间戳,代表给定月份的第一天和最后一天。是否可以通过编程方式确定上个月第一天和最后一个月的时间戳?

比如我有以下两个时间戳:
1467331201 --> 2016 年 7 月 1 日
1469923201 --> 2016 年 7 月 31 日

基本上,我能否以一致的方式操作这两个数字,以便分别使用 2016 年 6 月 1 日和 2016 年 6 月 30 日的 unix 时间(或 Date 对象)?我遇到的问题是您不能简单地减去给定的金额,因为一个月中的天数是可变的。

最佳答案

你可以使用这个函数:

function getPreviousMonthRange(unixTime) {
var dt = new Date(unixTime * 1000);
dt.setUTCDate(0); // flips to the last day of previous month
var unixLast = dt.getTime();
dt.setUTCDate(1); // back to the first day of that same month
var unixFirst = dt.getTime();
return [unixFirst / 1000, unixLast / 1000];
}

// given first and last date (only one is really needed)
var unixTimeFirst = 1467331201;
var unixTimeLast = 1469923201;

// get previous month's first & last date
var [first, last] = getPreviousMonthRange(unixTimeFirst);

// output
console.log('previous month first day: ', first, new Date(first*1000));
console.log('previous month last day: ', last, new Date(last*1000));

关于javascript - 如何根据 Javascript 中的 unix 时间戳以编程方式确定之前的时间段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38963826/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com