V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
imherer
V2EX  ›  Node.js

js 时间如何比较?

  •  
  •   imherer · 2017 年 7 月 25 日 · 3965 次点击
    这是一个创建于 3091 天前的主题,其中的信息可能已经有所发展或是发生改变。
    var t1 = new Date('2017-01-01 23:23'),
        t2 = new Date('2017-01-01 23:23');
    	  
    t1 == t2 // false
    t1 === t2 //false
    t1 > t2 // false
    t1 < t2 //false
    t1 >= t2 // true
    t1 <= t2 //true
    

    各位时间一般都怎么比较的,换成时间戳比的吗? 能直接用字符串形式的时间去比较吗?

    23 条回复    2017-07-27 13:28:50 +08:00
    linus3389
        1
    linus3389  
       2017 年 7 月 25 日   ❤️ 1
    时间戳....
    invoke
        2
    invoke  
       2017 年 7 月 25 日   ❤️ 1
    用时间戳比啊。。
    scriptB0y
        3
    scriptB0y  
       2017 年 7 月 25 日   ❤️ 1
    时间肯定是用时间戳比较的,用 str 不科学。

    2017-07-25T07:39:35.488928+00:00
    2017-07-25T06:39:35.488928+08:00
    你告诉我哪个早
    Famio
        4
    Famio  
       2017 年 7 月 25 日
    不止 js 用时间戳比时间,计算时间,我想大部分语言都是把时间转成时间戳来计算的。
    imherer
        5
    imherer  
    OP
       2017 年 7 月 25 日
    @Famio
    zhangbohun
        6
    zhangbohun  
       2017 年 7 月 25 日 via Android
    用毫秒比
    wly19960911
        7
    wly19960911  
       2017 年 7 月 25 日 via Android
    我吐槽下,你拿 date 对象比较,能比较出什么呢 hhh 内存地址吗
    ntupc
        8
    ntupc  
       2017 年 7 月 25 日
    对象的比较毫无意义
    stantbyme
        9
    stantbyme  
       2017 年 7 月 25 日
    对比时间戳吧 可以试试 momentjs
    laobubu
        10
    laobubu  
       2017 年 7 月 25 日
    在 t1 和 t2 前面加一个 + ,转化成时间戳再比较。

    +t1 == +t2
    kimown
        11
    kimown  
       2017 年 7 月 25 日 via Android
    别自己写重复代码,直接 moment 库
    maomaomao001
        12
    maomaomao001  
       2017 年 7 月 25 日 via Android
    用 momentjs 处理时间比较好
    alexgor
        13
    alexgor  
       2017 年 7 月 25 日 via Android
    帖子背景怎么弄的
    klesh
        14
    klesh  
       2017 年 7 月 25 日 via Android
    momentjs
    bombless
        15
    bombless  
       2017 年 7 月 25 日 via Android
    nodejs 节点专用主题
    awesomes
        16
    awesomes  
       2017 年 7 月 25 日
    aleen42
        17
    aleen42  
       2017 年 7 月 25 日
    t1.valueOf() === t2.valueOf()
    autoxbc
        18
    autoxbc  
       2017 年 7 月 26 日
    别听他们的,就这么比
    t1 - t2 == 0
    // true

    var t1 = new Date('2017-01-01 23:24');
    var t2 = new Date('2017-01-01 23:23');
    t1 - t2 > 0
    // true
    wanderingwi
        19
    wanderingwi  
       2017 年 7 月 26 日
    t1.getTime() == t2.getTime()
    daisyxdx
        20
    daisyxdx  
       2017 年 7 月 26 日
    支持 18 楼
    daisyxdx
        21
    daisyxdx  
       2017 年 7 月 26 日
    但是格式不对
    ryanzyy
        22
    ryanzyy  
       2017 年 7 月 26 日
    moment.js
    yimity
        23
    yimity  
       2017 年 7 月 27 日 via Android
    @scriptB0y 一般没人会这么搞吧,都是一个时区来的啊。字符串直接就可以,但是对象不行。毫秒上上之选
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2592 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 05:15 · PVG 13:15 · LAX 21:15 · JFK 00:15
    ♥ Do have faith in what you're doing.