代码之家  ›  专栏  ›  技术社区  ›  TimS

不同浏览器的JavaScript中的日期格式有问题

  •  10
  • TimS  · 技术社区  · 14 年前

    new Date('2001-01-01T12:00:00Z')
    

    Firefox对此表示满意,但Chrome和IE返回无效日期。

    我想我应该试着替换T和Z,如下所示:

    new Date('2001-01-01 12:00:00')
    

    这一次Chrome对此表示满意,但是Firefox和IE返回了无效的日期。

    你知道我该怎么做才能在所有浏览器中用这种格式得到一个日期对象吗?!

    非常感谢, 提姆

    4 回复  |  直到 14 年前
        1
  •  24
  •   mplungjan Gvidas    9 年前

    这适用于“我的盒子”上的所有浏览器-请在控制台中尝试:

    alert(new Date('2001/01/31 12:00:00'))
    

    所以

    new Date('2001-01-01T12:00:00Z'.replace(/\-/g,'\/').replace(/[T|Z]/g,' '))
    

    IE8、FF3.6、Safari4、镀铬

        2
  •  3
  •   theycallmemorty    14 年前

    你也可以尝试使用 Date.js -一个开源的javascript日期操作库。

        3
  •  3
  •   NicolasT    14 年前

    new Date(2001,0,1,12,0,0)
    

    new Date(year,month,day,hour,minutes,seconds) 
    
        4
  •  3
  •   PleaseStand    14 年前

    这适用于所有主要的5种浏览器,并使所有浏览器将时间识别为GMT/UTC而不是本地时间(Z后缀表示时间为UTC):

    new Date('2001-01-01T12:00:00Z'.replace(/\-/g,'\/').replace(/T/,' ').replace(/Z/,' -0'))