我尝试使用 Javascript 中 Date
对象的 getDay()
函数获取星期几。
理论上它工作正常,但有时输出会有延迟,所以如果函数应该返回“4”,它会返回“1”。
例如
var date= new Date("2009","04","30");
alert(date.getDay()); // the function returns 6, should return 4
var date= new Date("2009","05","01");
alert(date.getDay()); // the function returns 1, should return 5
我真的不知道为什么会这样。这个例子来自IE8。 FF 3 的行为相似,但返回不同的值。第一个是 7,不是 4。第二个就像在 IE8 中一样。
知道为什么会这样吗?
最佳答案
因为月份数字是从零开始的,而不是从一开始的。
new Date("2009","04","30")
为 5 月 的 30 日创建一个 Date
对象,而不是4 月 30 日。
(它基于零的原因可能是历史性的,即它的行为与过去不同系统中的某些方法相同......)
关于javascript - 为什么 getDay 返回不正确的值? (javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/834757/