首页 目录 View on GitHub

the Leancloud framework G

parse(dateString)

类似Date构造函数,但容错性稍高
逻辑如下:
  • 如果传入数字,且小于 9000000000 (这个数比32位整数最大值还大)则认为是unix时间戳
  • 如果传入数字,且大于 9000000000 则认为是java时间戳
  • 如果传入UTC时间(特点是以字符串 GMT 结尾)则直接用Date解析
  • 如果传入ISO时间(____ T ____ Z)则直接用Date解析
  • 如果传入日期和时间(xxxx-xx-xx xx:xx:xx)分别处理时间和日期
  • 如果传入时间(xx:xx:xx)日期设为今天
  • 如果传入日期(xxxx-xx-xx)时间设为 00:00:00
处理日期的方式:(大写字母的意思是自动补全为今天)
  • xx:YYYY-MM-xx
  • xx-xx:YYYY-xx-xx
  • xx-xx-xx:20xx-xx-xx
  • 其他:直接传给Date
处理时间的方式:
  • xx:xx:00:00
  • xx:xx:xx:xx:00
  • 其他:直接传给Date
以上时间、日期的“xx”都可以只有一位,自动在前面补个0

如果仍然无法解析出正确的日期,返回和Date()传入一个非法日期效果一样。