我正在開發一個從用戶那里獲取輸入一段時間的程式。程式將獲取資訊并使用當前日期作為時間戳中的日期自動生成 Unix 時間戳。
例如:
Daniel 想在圣誕節那天的上午 8:30 生成一個 Unix 時間戳。他運行一個命令
/unix 8:30,控制臺列印出來1640421000。
實作這一目標的最佳方法是什么?我了解如何生成 Unix 時間戳,但如何僅編輯用戶輸入的時間。任何幫助將不勝感激。
uj5u.com熱心網友回復:
您可以為當前日期創建一個日期,根據需要設定時間,然后生成一個以秒為單位的時間值。
如果用戶總是輸入 H:mm 并且您不需要驗證輸入,那么以下將執行:
let time = '8:30';
let tv = new Date().setHours(...(time.split(/\D/)), 0) / 1000 | 0;
// Check value
console.log(new Date(tv * 1000).toString());
但是,應驗證輸入(例如,小時 0-23,分鐘 0-59)。
uj5u.com熱心網友回復:
我只是采用了以下方法:
const time = interaction.options.getString('time');
const date = new Date().toISOString().slice(0, 10);
console.log(Math.round(new Date(`${date} ${time}:00`).getTime()/1000));
似乎對我有用。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/375006.html
標籤:javascript 日期 Unix 时间 时间戳
