Dav1s
V2EX  ›  科技

年经贴: YYYY-MM-dd 你改了吗?

  •  1
     
  •   Dav1s · Dec 30, 2021 · 8249 views
    This topic created in 1780 days ago, the information mentioned may be changed or developed.

    y:year-of-era ;正正经经的年,即元旦过后; Y:week-based-year ;只要本周跨年,那么这周就算入下一年;就比如说今年(2021-2022) 12.31 这一周是跨年的一周,而 12.31 是周五,那使用 YYYY 的话会显示 2022 ,使用 yyyy 则会从 1.1 才开始算是 2022 。

    50 replies  •  2021-12-31 16:20:41 +08:00
    huntagain2008
    huntagain2008
    Dec 30, 2021
    1
    本人小白。哦,标准写法是用 yyyy 还是 YYYY?
    wudaye
    wudaye
    Dec 30, 2021
    2
    没踩过这个坑,因为从来都是用小 y
    sadfQED2
    sadfQED2
    Dec 30, 2021 via Android❤️21
    3
    12 月 31 日的我:感谢反馈,这个 bug 正在修复中
    1 月 1 日的我:昨天那个 bug 已经修复上线了
    66beta
    66beta
    Dec 30, 2021
    4
    没用过大 Y ,涨知识了
    starsky007
    starsky007
    Dec 30, 2021
    5
    没头没脑,也要看语言、库吧。
    mineralsalt
    mineralsalt
    Dec 30, 2021
    6
    @huntagain2008 yyyy, 各种库, 各种教程基本上都是 yyyy, 从来没见过 YYYY 这种写法, 虽然我今天也是涨知识了
    Kimen
    Kimen
    Dec 30, 2021
    7
    是的,也要看语言和库,dayjs 里面的 YYYY 就是没问题的
    sagaxu
    sagaxu
    Dec 30, 2021 via Android
    8
    Java 还有 uuuu
    MuSeCanYang
    MuSeCanYang
    Dec 30, 2021
    9
    啥语言啊,SQL 我看是正常的
    banliyaya
    banliyaya
    Dec 30, 2021
    10
    @mineralsalt 就我前端来说 dayjs 和 momentjs 都是 YYYY ,没有 yyyy 这个写法。
    BiChengfei
    BiChengfei
    Dec 30, 2021
    11
    Y:周年( Year )
    y:日历年( Week year )
    jdk api 中的 java.text.SimpleDateFormat 的描述中有

    学 java 的时候有看到过
    BiChengfei
    BiChengfei
    Dec 30, 2021
    12
    英文写反了
    Robertwhite
    Robertwhite
    Dec 30, 2021
    13
    我用的是 momentjs ,YYYY ,我明天要看一下,到底有没有 bug
    ongongethan
    ongongethan
    Dec 30, 2021 via iPhone
    14
    20060102 表示没有这个问题 doge
    plcx
    plcx
    Dec 30, 2021
    15
    公司老项目有幸体验到此 BUG ,Jackson 配的大 Y
    daliusu
    daliusu
    Dec 30, 2021
    16
    hahastudio
    hahastudio
    Dec 30, 2021
    17
    /t/740615
    /t/633650
    提前年经了
    crimeshaper
    crimeshaper
    Dec 30, 2021
    18
    golang 表示没这个问题,都是 1,2,3,4,5,6 标志
    zwgf
    zwgf
    Dec 30, 2021
    19
    @crimeshaper 别说 go 真的是最有意思的 2006 年 1 月 2 日 15 点 4 分 5 秒,PHP 直接 Ymd
    zwgf
    zwgf
    Dec 30, 2021
    20
    @zwgf PHP 的 Ymd 雅蠛蝶 都不需要写四个 YYYY
    SolidZORO
    SolidZORO
    Dec 30, 2021 via iPhone
    21
    @zwgf hhh 老哥把我给整笑了,原来 PHP 还有这一出啊……
    lithiumii
    lithiumii
    Dec 30, 2021
    22
    犹记得刚入行时公司遇到这个 bug ,同事们一头雾水的时候我因为摸鱼的时候看到了所以成功确认了问题
    whileFalse
    whileFalse
    Dec 31, 2021 via iPhone❤️4
    23
    老外就 tm 喜欢研究这些没有用的东西。
    EscYezi
    EscYezi
    Dec 31, 2021 via iPhone
    24
    idea 写 YYYY 会提示改成 yyyy 的,错过一次就不会错第二次了
    1daydayde
    1daydayde
    Dec 31, 2021 via iPhone
    25
    @SolidZORO on php topic 了(滑稽
    zoffy
    zoffy
    Dec 31, 2021
    26
    涨知识了
    zoffy
    zoffy
    Dec 31, 2021
    27
    前端好像没用这样的约定,至少 moment.js 没有
    yaphets666
    yaphets666
    Dec 31, 2021
    28
    前端的不用担心。。。因为 YYYY 只是告诉格式化工具这里是年的占位符
    yangzzzzzz
    yangzzzzzz
    Dec 31, 2021❤️1
    29
    没事 元旦客户不上班
    Removable
    Removable
    Dec 31, 2021
    30
    C#的日期格式化好像不支持大写的 Y
    dumbass
    dumbass
    Dec 31, 2021
    31
    确实,用`dayjs`或`moment.js`等前端时间库没有这个问题
    demo
    demo
    Dec 31, 2021
    32
    每年都会遇到这个坑,可能是标准不统一吧,目前接手的项目代码就是这种现状,比如 Day.js 是 YYYY ( https://dayjs.gitee.io/docs/zh-CN/parse/string-format),Element-UI 是 yyyy ( https://element.eleme.cn/2.15/#/zh-CN/component/date-picker#ri-qi-ge-shi)
    dcsuibian
    dcsuibian
    Dec 31, 2021
    33
    Java 试了下( jshell 复制以下内容),确实如此

    ```
    import java.text.SimpleDateFormat;
    Date date = new Date();
    new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
    new SimpleDateFormat("YYYY-MM-dd HH:mm:ss").format(date);
    ```

    结果:

    ```
    $7 ==> "2021-12-31 10:55:50"
    $8 ==> "2022-12-31 10:55:50"
    ```

    每次看到这种帖子,都想吐槽下那些不用时间戳传递和记录时间的,出问题的机会少太多了
    HackerJax
    HackerJax
    Dec 31, 2021 via iPhone
    34
    所以我说 PHP 是最好的语言这回大家都相信了吧?
    lower
    lower
    Dec 31, 2021
    35
    前端时间库好像是国人搞的
    fdgdbr
    fdgdbr
    Dec 31, 2021
    36
    前两天刚刚出的 bugi😂
    jsjjdzg
    jsjjdzg
    Dec 31, 2021
    37
    时间戳战法无敌
    marcong95
    marcong95
    Dec 31, 2021
    38
    Dayjs 用户无所畏惧,非要用 Week of Year 的时候还要加载插件
    morty0
    morty0
    Dec 31, 2021
    39
    2006-01-02 没有这个问题
    xqk111
    xqk111
    Dec 31, 2021
    40
    momentjs ,试了一下,没事啊
    wktrf
    wktrf
    Dec 31, 2021
    41
    又不是所有语言的都是这种表达形式,没有意义,目前我就知道 Java 有这个坑
    From313
    From313
    Dec 31, 2021
    43
    巧了刚改完这个
    Robertwhite
    Robertwhite
    Dec 31, 2021
    44
    @Robertwhite #13 ,刚测了,前端 momentjs ,YYYY ,没有问题
    masterclock
    masterclock
    Dec 31, 2021
    45
    感觉老外我和我们对时间概念的理解很不一样
    YYYY 究竟在上面情况下有用?
    夏令时?
    09/09/09 这样的究竟怎么理解?
    l00t
    l00t
    Dec 31, 2021❤️1
    46
    至少加个语言限定吧,没头没脑的不知道说啥
    swulling
    swulling
    Dec 31, 2021
    47
    Java 才有这个行为而已。
    apeople
    apeople
    Dec 31, 2021
    48
    卧槽,昨天上线后端同事就遇到这个 bug 了,今天刷到这个帖子就感觉很神奇,涨知识了。
    DawnMoon
    DawnMoon
    Dec 31, 2021
    49
    Felldeadbird
    Felldeadbird
    Dec 31, 2021
    50
    目前没有遇到过这个 BUG 。 一般啥语言才有这个坑?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1971 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 119ms · UTC 12:31 · PVG 20:31 · LAX 04:31 · JFK 07:31
    ♥ Do have faith in what you're doing.