JS 日期对象在浏览器间的若干差异

时间:2022-04-18 11:05:23

JS中 ,通过 new Date() 可以获取当前时间

也可以通过 new Date("2013/12/12 8:00:00")的方式,创建某个指定时间对象

ChromeFF下,以下几种格式都是允许的

  • new Date("2013/12/12")
  • new Date("2013-12-12")
  • new Date("12-12-2013") 注:后来发现 这个FF不支持
  • new Date("12/12/2013")

但是在IE8及以下

new Date("2013-12-12") 和 new Date("2013-12-12 8:00:00")被认为是错误的格式

其他格式都正常

日期函数还有一个容易犯错的地方:一个日期对象获取月份的时候,总是比正确数值少1.如

console.log(new Date("2014-01-01").getMonth())
--->0

这是因为 JS中日期函数的月份是从0-11的。


补充

①时间戳转日期的方法

function Stamp2Date(stamp){
return new Date(parseInt(stamp));
}

②时间的计算 即对一定时间长度的加减(数值单位是毫秒)

  • 一小时以后的时间:
    var afterOneHour = new Date() + 1000*60*60
  • 一天前的时间:
    var yesterday = new Date() - 1000*60*60*24