我正试图利用时刻来开始一天的活动。我得到了不同的结果:
moment().startOf('day'); //good
moment(new Date()).startOf('day'); //this does not work!
小提琴:https://jsfiddle.net/y1of77wx/
实际情况是我在一个以日期对象作为参数的函数中执行此操作:
function doWork(dt) {
return moment(dt).startOf('day');
}
我确信解决方案很简单,但我只是遗漏了一些东西。
答案 0 :(得分:4)
我建议使用format()
来显示时刻对象的值。
正如Internal Properties指南所述:
Moment对象具有多个以
_
为前缀的内部属性。最常见的内部属性是
_d
属性,它包含Moment包装器的JavaScript日期。通常,开发人员对控制台输出_d
的值感到困惑。...
要打印出片刻的价值,请使用
.format()
,.toString()
或.toISOString()
这里有一个显示正确结果的片段:
console.log(moment().startOf('day').format());
console.log(moment(new Date()).startOf('day').format());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>