V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
nidongpinyinme
V2EX  ›  程序员

关于[Moment.js]每年整出来 53 个周的事儿

  •  
  •   nidongpinyinme · 2021-01-24 12:39:13 +08:00 · 3026 次点击
    这是一个创建于 1403 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在入了 obsidian 的坑做日报,然后往周报上发展时发现 moment.js 的周算法和 launchbar 的不太一样 以今天( 2021-01-24 )为例

    • launchbar:使用 snippet,<date 第 w 周>,由于默认周日为一周开始,所以输出为第 5 周,昨天则是第 4 周
    • obsidian:内置的日记插件,设置周日为一周开始时间是第 4 周,否则是第 3 周

    有什么方法可以把这两边统一一下吗

    看了下 obsidian 的文档,用的是moment.js,写着 ww 可以生成 1-53 周,这真的合理吗?

    9 条回复    2021-01-30 20:29:58 +08:00
    renmu123
        1
    renmu123  
       2021-01-24 14:08:06 +08:00 via Android
    iso 某个时间标准是对周数有规定的
    Lax
        2
    Lax  
       2021-01-24 16:17:25 +08:00
    52 * 7 = 364, 多出来的 1 天是 53 周没问题啊?
    如楼上所说,ISO8601 有规定
    no1xsyzy
        3
    no1xsyzy  
       2021-01-25 13:11:38 +08:00
    2020 年有 53 个周四,才有 53 周
    大部分年份只有 52 周。
    nidongpinyinme
        4
    nidongpinyinme  
    OP
       2021-01-25 14:23:37 +08:00
    @renmu123 但是两边的计数算法有冲突,所以想问问有没有插件或者算法之类的规避一下
    nidongpinyinme
        5
    nidongpinyinme  
    OP
       2021-01-25 14:25:02 +08:00
    @Lax 但是不是那一天是 53 呀,两个软件一个识别成新年的第 1 周,另一边是第 53 周,这一年后面的每一周不是都会有错位吗
    buhi
        6
    buhi  
       2021-01-26 09:59:27 +08:00
    稍微想一下也知道他们有选项可以设置每周的第一天是星期一还是星期日吧, 自己翻翻 moment.js 文档很快就找到了
    Lax
        7
    Lax  
       2021-01-26 10:19:37 +08:00
    @nidongpinyinme #5 看下 ISO,周数是按周四所在的周是哪一年来确定的。2021 年第一个周四是 1 月 7 日,后面分别是 1.14 ,1.21 ,1.28 。
    1.24 是周日,根据你的需求(周日开始或是周一开始一周),既可能是第 3 周,也可能是第 4 周。
    nidongpinyinme
        8
    nidongpinyinme  
    OP
       2021-01-29 20:10:57 +08:00
    @buhi 现在面临的问题不是第一天是星期几,而是一个软件当成 2020 年的第 53 周,一个软件当成 2021 年的第一周的差异
    buhi
        9
    buhi  
       2021-01-30 20:29:58 +08:00
    @nidongpinyinme 一个把周日划分到上一周, 另一个把周日划分到下一周, 不就会出现你说的这种情况吗, 所以我高度怀疑这个原因.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2947 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:30 · PVG 08:30 · LAX 16:30 · JFK 19:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.