计算一周中某一天的日期
给定一个工作日 (1-7),我如何计算该工作日的最后一个日期是什么?
示例:今天是 2008 年 11 月 12 日星期三,我想知道上一个星期五的日期是什么。
Given a week-day (1-7), how can I calculate what that week-day's last date was?
Example: Today is Wednesday, 2008/11/12, and I want to know what last Friday's date was.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
一般来说? 请参阅日历计算。
在前一周内这个较小的情况下? 求天数差(星期五 = 5,星期三 = 3)。 找出周内的差异(上周 = -7 天)。 当您找到天+周的偏移量后,将该偏移量应用于日历日期。
In general? See Calendrical Calculations.
In this narrower case of within the previous week? Find the difference in days (Friday = 5, Wednesday = 3). Find differences in weeks (last week = -7 days). When you've found the offset in days+weeks, apply that offset to the calendar date.
如果
今天
是一周中的当前日期,那么您可以使用类似的内容:假设星期五由一周中的第 6 天表示(即 1 表示星期日)。 然后从当前日期减去
days_since_friday
,您将得到上周结束的日期。上面的表达式比需要的稍微复杂一些。 如果星期几从周日的 0 点开始,则可简化为:
或
If
today
is the current day of the week, then you can use something like:This assumes that Friday is represented by day number 6 of the week (that is, 1 represents Sunday). Then subtract
days_since_friday
from the current date, and you'll get the date of the end of last week.The above expression is slightly more complicated than it needs to be. If your day-of-week started at 0 for Sunday, it simplifies to:
or