Mar*_*ssa 4 javascript momentjs
我的控制台日志给了我一个意想不到的输出.
var bool = (moment("2017-04-08 23:00:00").isBefore(moment("2017-04-09 01:00:00", 'day')));
console.log(bool);
Run Code Online (Sandbox Code Playgroud)
由于某种原因,输出是错误的.根据文档,以下代码应返回true.
moment('2010-10-20').isBefore('2011-01-01', 'year')
Run Code Online (Sandbox Code Playgroud)
即使它不是一整年过去,如果它是不同的一年,我的理解是它应该返回虚假.就我而言,虽然它还没有24小时,但却是另一天.有什么我不能正确理解的吗?
@Oliver Charlesworth是对的,moment()不接受'day'作为第二个论点.看看这里,向下滚动查看所有有效签名.
话虽如此,你可以转换
isBefore(moment("2017-04-09 01:00:00", 'day'));
Run Code Online (Sandbox Code Playgroud)
至
isBefore(moment('2017-04-09 01:00:00'), 'day');
Run Code Online (Sandbox Code Playgroud)
或者
isBefore('2017-04-09 01:00:00', 'day');
两者都有效.
这是isBefore的签名.
该moment(...)说法并没有接受“日”参数。
相反,您应该isBefore(...)像这样使用 day 参数调用:
moment(...).isBefore(moment(...), 'day'));
Run Code Online (Sandbox Code Playgroud)
更多信息可以在这里找到此刻的文档。
| 归档时间: |
|
| 查看次数: |
14382 次 |
| 最近记录: |