V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
napoleonu
V2EX  ›  问与答

Javascript求助,Unix时间戳和日期的转换问题

  •  
  •   napoleonu · 2011-03-06 19:10:41 +08:00 · 4783 次点击
    这是一个创建于 5015 天前的主题,其中的信息可能已经有所发展或是发生改变。
    以下是我在Chrome console中的计算过程,结果让我迷惑

    没学过Javascript,只是看着别人这么写所以这样用。

    Math.round(new Date().getTime()/1000)
    1299408914

    Math.round(new Date(2011, 02, 01, 00, 00, 0).getTime()/1000)
    1298908800

    new Date(1298908800 * 1000).toLocaleString()
    "Tue Mar 01 2011 00:00:00 GMT+0800 (China Standard Time)"

    new Date(1299408914 * 1000).toLocaleString()
    "Sun Mar 06 2011 18:55:14 GMT+0800 (China Standard Time)"

    Math.round(new Date(2011, 03, 01, 00, 00, 0).getTime()/1000)
    1301587200

    new Date(1301587200 * 1000).toLocaleString()
    "Fri Apr 01 2011 00:00:00 GMT+0800 (China Standard Time)"
    5 条回复    1970-01-01 08:00:00 +08:00
    napoleonu
        1
    napoleonu  
    OP
       2011-03-06 19:17:27 +08:00
    不知道为什么差一个月,,,
    darasion
        2
    darasion  
       2011-03-06 19:33:35 +08:00
    时间戳我经常这样用: Number(new Date)

    没看太懂。
    现在不是3月吗?你用一个2月的跟它比较,当然差一个月了。。
    darasion
        3
    darasion  
       2011-03-06 19:37:09 +08:00
    啊。查了一下手册。

    月份范围是 0-11 。
    napoleonu
        4
    napoleonu  
    OP
       2011-03-06 19:45:46 +08:00
    @darasion 谢谢,我也猜到了 :)
    shanghaikid
        5
    shanghaikid  
       2011-03-06 20:21:26 +08:00
    js是从0开始算的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1032 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 20:43 · PVG 04:43 · LAX 12:43 · JFK 15:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.