Pet*_*ter 0 javascript date timeago momentjs
也许是一个简单的问题,但我不明白。
var date = new Date();
test = date.toISOString();
alert(moment(test, "YYYYMMDD").fromNow());
Run Code Online (Sandbox Code Playgroud)
会返回“16 小时”,但为什么呢?
因为您使用的是moment(String, String), 而不是moment(String)(toISOString()输出显然是 ISO 8601 格式)或moment(Date).
所以moment(test, "YYYYMMDD")将是一天的开始而不是当前时间。
正如默认部分所述:
您可以创建一个仅指定一些单位的时刻对象,其余的将默认为当前的日、月或年,或 0 表示小时、分钟、秒和毫秒。
var date = new Date();
test = date.toISOString();
var m1 = moment(test, "YYYYMMDD")
console.log(m1.format());
console.log(m1.fromNow());
var m2 = moment(test)
console.log(m2.format());
console.log(m2.fromNow());
var m3 = moment(date)
console.log(m3.format());
console.log(m3.fromNow());Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1575 次 |
| 最近记录: |