计算日历一月显示日期数量的方法

以 Dart 为例:
Dart 中的 DateTime 周一为一周起始日,索引是 1,周日为结束日索引是 7.月索引从 1 到 12.
当前:2019-08-06
当月:2019-08-01
下月:2019-09-01

startWeekday : 当月第一天的周几 – 月开始日期索引(开始日期的周几)

endWeekday : 下月第一天的周几 – 月开始日期索引(开始日期的周几)

当月最后一天 + startWeekday + (7 – endWeekday) = 当月日历显示日期数量

以下图为例:
当月:2019-10-01 Dart 的周所以开始是 7,结束是 6.
startWeekday : 则周几为 2,(29, 30, 1)则索引为([7, 1, 2]),
endWeekday : 则周几为 5,(27, 28, 29, 30, 31, 1)则索引为([7, 1, 2, 3, 4, 5]),
最后一天:31,
则:31 + 2 + (7 – 5) = 35天。
所以日历最终显示为:上月的 29 30 两天+当月的 31 天+下月的1 2两天,共 35 天

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇