javascript - 问题比较 JavaScript 中的时刻
问题描述
我有以下代码检查开始日期是否 >= 到结束日期。几乎每次我比较两个相同的日期时,日期之间的差异都小于 0。
这是我的代码:
var end = $('#job_end').datetimepicker('date');
var start = $('#job_start').datetimepicker('date');
console.log(start);
console.log(end);
console.log(start.diff(end));
console.log(start.isSameOrAfter(end));
这是此代码的输出:
Moment {_isAMomentObject: true, _isUTC: false, _pf: {…}, _locale: Locale, _d: Wed Jul 25 2018 14:15:00 GMT-0500 (Central Daylight Time), …}
Moment {_isAMomentObject: true, _isUTC: false, _pf: {…}, _locale: Locale, _d: Wed Jul 25 2018 14:15:00 GMT-0500 (Central Daylight Time), …}
-6
false
有什么我做错了吗?
解决方案
从阅读您的代码来看,您似乎有六毫秒的差异。由于您首先获得结束日期,然后是开始日期,因此这可能是这两行代码的执行时间。如果您只是想比较日期而不是时间,请检查并确保您只得到日期而不是时间。
看看使用moment().startOf('day')将时间归零,你只能比较一天。
推荐阅读
- javascript - 如何从我的代码中删除此调试符号?
- python - 对 Spotify 令牌的 POST 请求出现 400 错误(Python)
- list - 在 Ansible 中过滤字典
- javascript - 如何比较 Electron 中的 2 个 NativeImage 实例
- android - Android库如何区分同一个库不同版本
- prometheus - 我可以通过使用 node-exporter docker 映像作为我的微服务的 sidecar 从 AWS ECS Fargate 中抓取指标吗?
- hana - 将hana表转换为hdb表
- glsl - GLSL 错误:语法错误,意外 IDENTIFIER,预期 RIGHT_PAREN
- azure - 无法自定义 Azure 监视器警报电子邮件主题
- javascript - ChartJS:如何在圆环图的各段之间添加线分隔符?