如何在 momentjs 中获取 endOf day toISOString() 但毫秒应该是 .000Z 而不是 .999Z

How to get endOf day toISOString() in momentjs but the milliseconds should be .000Z and not .999Z

基本上我有一个日期:

const now = moment()
console.log(now.endOf('day').toISOString()) // 2021-10-25T21:59:59.999Z

我想将其设置为:2021-10-25T21:59:59.000Z

我做了一个绕过

console.log(`${moment().endOf('day').utc().format('YYYY-MM-DDTHH:mm:ss')}.000Z`)

并得到了我想要的打印输出,但是

也许有人有更优雅的方法?

谢谢大家!

或者,您可以将 moment 转换为 Date(或者只使用 Date 本身),并使用 Date.prototype.setUTCHours()0 作为第 4 个参数(毫秒):

const now = new Date()
now.setUTCHours(23,59,59,0) // end of day
console.log(now.toISOString())