我正在尝试想出一种方法来查找季度中的第几周,并偏移两周。我们在季度的第三个星期六(2011 年 10 月 15 日、2012 年 1 月 21 日等)发布季度软件版本。有办法获取这些信息吗?
例如,本周将是该季度的第 13 周。
最佳答案
function getQuarterWeek(d) {
// Convert to UTC to avoid DST changes.
d = new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDay()));
// For previous Saturday you would normally add one here.
// But we want to go back two weeks, so subtract 14.
d.setUTCDate(d.getUTCDate() - 13);
d.setUTCDate(d.getUTCDate() - d.getUTCDay() - 1);
// Save the timestamp of this Saturday.
var s = d.getTime();
// Now get the first day of the quarter.
d.setUTCDate(1);
d.setUTCMonth(d.getUTCMonth() - d.getUTCMonth() % 3);
// And find the following Saturday.
d.setUTCDate(7 - d.getUTCDay());
// Convert the time difference to weeks.
return (d.getTime() - s) / 604800000 + 1;
}
关于javascript - 本季度的第几周,使用 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7773027/