所以我有一個 API,它給我這樣的日期格式11/21/2022 19:00:00我需要做的是我必須為這個日期時間安排通知,但問題是我正在使用react-native/expo它接受以秒為單位的安排時間。
我如何將此日期時間轉換為秒,我的意思是如果今天的日期是11/15/2022 12:00:00并且應該安排通知的日期是11/16/2022 12:00:00這意味著今天日期前 1 天的未來日期,而 1 天等于86400秒,這意味著我必須在86400幾秒鐘后觸發通知。那么我如何獲得即將到來的日期的剩余秒數?
uj5u.com熱心網友回復:
使用dayjs包解決
const dayjs = require("dayjs")
const d1 = dayjs("2022-11-15 13:00")
const d2 = dayjs("2022-11-16 12:00")
const res = d1.diff(d2) / 1000 // ÷ by 1000 to get output in seconds
console.log(res)
uj5u.com熱心網友回復:
- 函式Date.prototype.getTime()回傳自紀元開始以來的毫秒數 (1/1/1970)
- 獲取毫秒數并將其除以 1000 為秒
- 減去(四舍五入),你就有了不同
const secondsInTheFuture = new Date("11/16/2022 12:00:00").getTime() / 1000;
const secondsNow = new Date().getTime() / 1000;
const difference = Math.round(secondsInTheFuture - secondsNow);
console.log({ secondsInTheFuture, secondsNow, difference });
uj5u.com熱心網友回復:
您可以使用函式 new Date在 js 中獲取紀元時間,如果您將任何日期值傳遞給new Date(dateValue),請確保進行字串化。
new Date
要在幾秒鐘內獲得這兩個日期的差異,
const initialDate = '11/15/2022 12:00:00'
const futureDate = '11/16/2022 12:00:00'
const diffInSeconds = ( new Date(futureDate) - new Date(initialDate)) / 1000
ps:紀元時間以毫秒為單位,因此除以 1000。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/534477.html
