【问题标题】:Javascript date looks wrong when changing the month更改月份时 Javascript 日期看起来错误
【发布时间】:2016-03-30 14:14:36
【问题描述】:

我的眼睛一定在骗我,但是当我打电话给setMonth(1) 时,那个日期对象的日期不应该是二月吗? (今天是 2016 年 3 月 30 日)

x = new Date();
y = new Date();
x.setMonth(1);

document.write(x.toString() + '<br>' + y.toString());

结果:

【问题讨论】:

  • Adam -- 此代码只会在今天(所有日子)失败 相反,您能否更新您的帖子,说今天是 2016 年 3 月 30 日,然后截取结果。
  • 如果您将鼠标悬停在模糊的日期上,您可以看到发布帖子的确切时间。
  • 这两个关于 javascript 日期验证的主题可能会有所帮助:stackoverflow.com/questions/6177975/…stackoverflow.com/questions/1353684/…

标签: javascript


【解决方案1】:

没有 2016 年 2 月 30 日

因此,日期处理器正确地将日期更改为 2016 年 3 月 1 日

【讨论】:

  • 只看the spec for this "7. 找到一个值 t 使得..." - 这相当模糊 :)
  • 嗯? @JamesThorpe 你是什么意思?
  • 没有指定如何去寻找那个值——它通常对这样的算法非常具体——只是让它完全由实现来决定。只是显得格格不入,尤其是当下一步非常具体时:"Return Day(t) + dt − 1".
猜你喜欢
  • 2011-07-07
  • 1970-01-01
  • 2012-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多