簡體   English   中英

Moment.js在2個日期之間給出不正確的差異

[英]Moment.js giving Incorrect Difference between 2 Dates

我在我的React應用程序中使用了以下代碼中的moment.js來查找2個unix時間戳之間的差異:

import Moment from 'moment';

Moment.duration( 
    Moment(this.state.saleEndTime).diff(Moment(this.state.saleStartTime))
).humanize()

哪里

  • this.state.saleStartTime1511638810 (星期六,2017年11月25日19:40:10 GMT)
  • this.state.saleEndTime1516909110 (星期四,2018年1月25日19:38:30 GMT)

然而它正在給出輸出

an hour

這顯然不正確,應該是2個月。 我做錯了什么?

將時刻v2.19.2與節點v7.9.0一起使用


編輯:輸出需要humanizethis.state.saleStartTimethis.state.saleEndTime之間的this.state.saleEndTime可以從幾分鍾到幾個月......

我沒有意識到這是一張unix郵票。
您應該使用unix方法:

moment.duration(
  moment.unix(1516909110).diff(moment.unix(1511638810))
).humanize();

正在運行的代碼段:

 const result = moment.duration( moment.unix(1516909110).diff(moment.unix(1511638810)) ).humanize(); const App = () => ( <div > <div>{result}</div> </div> ); ReactDOM.render(<App />, document.getElementById('root')); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/moment@2.19.2/moment.js"></script> <div id="root"></div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM