日期对象在javascript中返回无效日期

时间:2015-01-25 06:00:50

标签: javascript

我在chrome&amp ;;中有一个像“2015-05-01 09:00:00”这样的日期opera使用代码返回我需要的格式“Fri May 01 2015 09:00:00 GMT + 0530(India Standard Time)” var austDay = new Date('2015-05-01 09:00:00'); 但在Firefox和资源管理器中它返回无效日期

1 个答案:

答案 0 :(得分:0)

如果需要一致性,则应手动解析日期字符串。如果您希望将“2015-05-01 09:00:00”视为UTC,则:

function parseISOUTC(s) {
  var b = s.split(/\D/);
  var d = new Date(Date.UTC(b[0], --b[1], b[2]||1, b[3]||0, b[4]||0, b[5]||0));
  return d && d.getMonth() == b[1]? d : NaN; 
}

请注意,如果日期值无效(例如2015-02-30),则会返回NaN。如果需要,您可以添加时间值验证。根据ECMA-262处理缺失的值。请注意,2位数年份将被视为20世纪。