簡體   English   中英

如何從實時中減去數據庫時間

[英]how to subtract db time from real time

我有這個:

let minute = timeSplit[0];
let today = new Date();
if (Math.abs(today.getMinutes() - Number(minute)) <= 5) {
  client.messages.create(
    {
      to: userPhoneNumber,
      from: "12055578708",
      body:
        "hello " +
        userNameString +
        ", \nYour training session just finished with " +
        trainerNameString
    },
    function (err, data) {
      if (err) {
        console.log("err: " + err);
      }
      console.log(data);
    }
  );
} else {
  console.log("not working");
}

它的作用是獲取當前分鍾(例如一小時的第 54 分鍾),並從我的數據庫中的minute中減去它。 如果我的 db 分鍾在當前分鍾的 5 分鍾內,則執行下一部分。

但是,在我的數據庫中是minutehour 我需要檢查我的數據庫中的時間是否在當前時間的 5 分鍾內。 minutehour都只是字符串值。 我怎樣才能做到這一點?

你有小時和分鍾,你需要檢查它是否在當前時間的 5 分鍾內。

您可以做的是為同一天構建一個日期對象,但使用您存儲的時間。 因此,如果您想比較分鍾和小時,則可以執行以下操作:

const today = new Date();
const myTime = new Date(today.getFullYear(), today.getMonth(), today.getDay(), hour, minute);

現在您有兩個可以比較的日期對象。 當您從另一個中減去一個時,結果將以毫秒為單位,因此您需要做一些工作將其轉換為分鍾。 在這種情況下,我們除以 1000 得到秒,然后除以 60 得到分鍾。 然后應用絕對函數並檢查它是否小於 5。

const difference = Math.abs((today - myTime) / 1000 / 60);
if (difference <= 5) {
  // send message
} else {
  // don't send the message now
}

暫無
暫無

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

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