偷懒用日期拼接年份的,今天都开始报错了

81 天前
 exploretheworld
什么 2023-02-29 ,笑了
13764 次点击
所在节点    程序员
50 条回复
NessajCN
81 天前
@lhstock 一年的时间按 365.2422 天,即 31556926 秒来算
78786381
81 天前
手拼不是更累
imlinhanchao
81 天前
明天就正常了
rainABC
81 天前
时间问题是一个永恒的问题
lhstock
81 天前
@NessajCN 我尝试换算 31556926 秒;计算未来几年的结果应该很难被用户接受吧;所以产品与用户对于年的定义是如何保持一致
```
const timer = new Date().getTime();
const test = (n = 0) => new Date(+timer + n * 31556926*1000).toLocaleDateString();
console.log(test(0))
console.log(test(1))
console.log(test(2))
console.log(test(3))
console.log(test(4))
// 输出如下:
2024/2/29
2025/2/28
2026/3/1
2027/3/1
2028/2/29
```
xmumiffy
81 天前
提工单,安排明天修.明天直接结单,完美.
NessajCN
81 天前
@lhstock 这结果哪里不对吗?
lhstock
81 天前
@NessajCN 带入一个场景 我今天办了年会,明天是 28 到期,我再办又是 3.1 => 3.1 => 2.29 => 2.28 反复循环,
kneo
81 天前
这都能错,我是难以理解。
youyouzi
81 天前
@binaryify dayjs 好评
NessajCN
81 天前
@lhstock 所以可否再描述一下这到底哪儿不对了?
你是觉得要每年都应该同一天办年会的话,那 29 号根本就不可能被设为年会日,相应的计算方法也不会按一年来加减
NessajCN
81 天前
@lhstock 更正一下,年会要同一天也同样是这样算最好,因为你不可能安排在 2 月 29 做固定年会日,而其他日期的话这样算是不会错的
hubaq
81 天前
@lhstock
爱奇艺:会员月卡服务时间以自然月为统计单位,即自服务开通日期,根据开通当月自然月天数做顺延
腾讯:月服务期限:开通当日起 31 天
laoona
81 天前
@treblex 真牛逼 重构吧
8355
81 天前
这种代码,说真的,自己懒的写写个注释都能自动生成了。。
vituralfuture
81 天前
日期,时间这种有标准的东西最好不要自己造轮子或者自己手动完成某些功能,因为非常容易忽略一些细节,比如大部分人都不会考虑的夏令时,润秒,时区。类似的还有 cookie ,http 协议等各种网络协议,又琐碎又容易出错
nzynzynzy
81 天前
一个环境和一个环境格式都不一样,不知道拼接的意义是啥,new Date()也不费啥事
zhushishi
80 天前
总有 2b 喜欢这么写。。。
jeansfish
80 天前
GoPro 今天居然是 3 月 1 日。
Yuhyeong
80 天前
/t/1019435 是你吗兄弟

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1019346

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX