console.log(dayjs('2023-06-11T23:40:00.000Z').isSameOrAfter(dayjs('2023-06-12T13:40:00.000Z'), 'day'))

根据我对isSameOrAfter方法的理解,当比较给定的日期时,它应该返回false,因为'2023-06-11T23:40:00.000Z'既不是同一天,也不是'2023-06-12T13:40:00.000Z'之后.

如果有任何关于为什么会发生这种行为以及我如何解决它的见解,我将不胜感激

推荐答案

dayjs()以当地时间解析日期,因此如果您的本地时区早于UTC,则日期将是2023-06-12...,如果您想要以UTC格式解析它,请改用dayjs().utc().

console.log(dayjs('2023-06-11T23:40:00.000Z').format());

console.log(
  dayjs('2023-06-11T23:40:00.000Z').isSameOrAfter('2023-06-12T13:40:00.000Z', 'day')
)

console.log(
  dayjs.utc('2023-06-11T23:40:00.000Z').isSameOrAfter('2023-06-12T13:40:00.000Z', 'day')
)
<script src="https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.8/dayjs.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.8/plugin/utc.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.8/plugin/isSameOrAfter.js"></script>
<script>
  dayjs.extend(window.dayjs_plugin_utc);
  dayjs.extend(window.dayjs_plugin_isSameOrAfter);
</script>

Node.js相关问答推荐

MongoDB:更新批量操作中许多不能正常工作的内容

(0,core_1.default)不是使用@middy/core的lambda处理程序上的函数

如何呈现ejs.renderFile中包含的子模板?

MongooseError[MissingSchemaError]:尚未为模型注册架构

一个大型的单个 Redis 实例可以处理所有事情,还是多个 Redis 实例?

Mongoose post中间件触发deleteMany

为什么我不能将 id 发送到后端并通过 findByIdAndRemove() 删除项目?

Next.js 在我的电脑上没有构建错误,但它们在使用 Vercel 部署时发生

为什么后端开发需要单独的服务器?

NPM 错误:修复upstream 依赖冲突安装 NPM 包(云功能)

从数据库读取数据并将其作为可下载的 zip 文件发送

[NodeJs 从 ADAL 升级到 MSAL]:无法在字符串上创建属性authenticationScheme

Sharp JS 依赖关系 destruct 了 Elastic Beanstalk 上的 Express Server

在 ExpressJS 中将变量传递给 JavaScript

Mongoose:查找、修改、保存

Sequelize 基于关联的查找

使用 Webpack 和 font-face 加载字体

node.js 模块和函数中this的含义

如何解决 Socket.io 404(未找到)错误?

node.js 异步库