Javascript 日期对象在月份编号中不一致?

标签 javascript date datetime

我对 JS 中的日期感到困惑...据我所知,月份的编号是 0-11,sa 正在创建

var x = new Date(2014, 2, 1)

将给我 3 月 1 日。但是创建 var x = new Date(2014, 2, 0) 给出二月,所以 x.getDate() 不会给我三月的天数,而是二月...如果它的数字是 2(从 0 开始计数),这应该返回三月的天数吗?

还有没有办法在 getDay() 方法中将星期一设置为一周的第一天?

最佳答案

月份范围从 0 到 11.0 是一月,其中月份的第几天从 1 开始,所以如果你在一天中使用 0,它会给出前几个月的最后一天。所以在你的情况下你应该使用

var x = new Date(2014, 1, 1) // for  1st feb 2014

您可以将一周的开始更改为 星期一,如下所示

Date.prototype.mGetDay = function() {
  return (this.getDay() + 6) %7;
}

请参阅本文以获取 details

关于Javascript 日期对象在月份编号中不一致?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23059578/

相关文章:

javascript - 编译成 JavaScript 而不是 CSS 的 CSS 预处理器语言可行吗?

javascript - 查找日期范围内的可用天数

mysql - 将多个字段转换为 DateTimeStamp

Java 8 DateTime API 在模式和值都未知时解析日期字符串

mysql - 使用 DATE_SUB 选择小于 5 分钟的行

c# - 十进制值被识别为 DateTime,而不是从 DateTime.Parse 返回 false

javascript - 自动化javascript按钮点击

javascript - 在 JSTree 中禁用多项选择不起作用

javascript - 使用新数据更新/修改 d3 词云

postgresql - 如何在 PostgreSQL 中读取带时区的时间戳?