JS 日期递增
JS Date incrementation
在没有库的情况下执行此操作。
dates.forEach((date) => {
if(date.getDay() == 6) {
console.log('sat', date)
var t = new Date()
console.log('sat new', new Date(t.setDate(date.getDate() + 1)))
} else ...
}
给出这个输出
sat
Date Sat Jan 01 2022 00:00:00 GMT+0200 (Eastern European Standard Time)
sat new
Date Sat Apr 02 2022 19:10:27 GMT+0300 (Eastern European Summer Time)
此代码的重点是查看日期是否为星期六。如果是这样,将它增加到成为一个工作日(我知道它说 +1 但它是一个 wip)
结果是日期增加了。但是由于某种原因,它将日期移到了三月。我环顾四周,显然这是你应该做的,但它没有这样做。
当我尝试 console.log('sat new', t.setDate(date.getDate() + 1))
(没有 new Date())时,我得到时间戳 1646236273249。this site 转换为 3 月 16 日。不知道这个有什么用
我希望我在这里提供了所有重要信息。
var t = new Date()
- 不向 Date
构造函数传递任何内容将使它“立即”。
我认为您需要将迭代日期传递给 Date
构造函数:
dates.forEach((date) => {
if(date.getDay() == 6) {
console.log('sat', date)
var t = new Date(date) // this line
console.log('sat new', new Date(t.setDate(date.getDate() + 1)))
}
}
为了给定日期增加一天:
date = new Date(date)
date.setDate(date.getDate() + 1)
console.log(date)
在没有库的情况下执行此操作。
dates.forEach((date) => {
if(date.getDay() == 6) {
console.log('sat', date)
var t = new Date()
console.log('sat new', new Date(t.setDate(date.getDate() + 1)))
} else ...
}
给出这个输出
sat
Date Sat Jan 01 2022 00:00:00 GMT+0200 (Eastern European Standard Time)
sat new
Date Sat Apr 02 2022 19:10:27 GMT+0300 (Eastern European Summer Time)
此代码的重点是查看日期是否为星期六。如果是这样,将它增加到成为一个工作日(我知道它说 +1 但它是一个 wip)
结果是日期增加了。但是由于某种原因,它将日期移到了三月。我环顾四周,显然这是你应该做的,但它没有这样做。
当我尝试 console.log('sat new', t.setDate(date.getDate() + 1))
(没有 new Date())时,我得到时间戳 1646236273249。this site 转换为 3 月 16 日。不知道这个有什么用
我希望我在这里提供了所有重要信息。
var t = new Date()
- 不向 Date
构造函数传递任何内容将使它“立即”。
我认为您需要将迭代日期传递给 Date
构造函数:
dates.forEach((date) => {
if(date.getDay() == 6) {
console.log('sat', date)
var t = new Date(date) // this line
console.log('sat new', new Date(t.setDate(date.getDate() + 1)))
}
}
为了给定日期增加一天:
date = new Date(date)
date.setDate(date.getDate() + 1)
console.log(date)