JavaScript中的日期實際上是一個數字,它計算自給定的固定日期以來的毫秒量。所以如果你在Javascript中有任何日期,你可以使用它的getTime
方法來查看這個數字。鏈接中的文檔比我在這裏的簡短描述更深入一點。
所以,如果你想看到多少秒的今天0小時和今天之間elaped,現在,你可以使用下面的代碼:
var now = new Date(); // a new Date initialized without parameter defaults to current time
// Initializing with just year, month and day will set the time of the day to 00:00:00
var today = new Date(now.getFullYear(), now.getMonth(), now.getDate());
var milisseconds = now.getTime() - today.getTime();
現在,所有你需要做的就是劃分milisseconds
變量爲1000,您將擁有「英制」秒數。從此,您可以根據需要轉換爲「公制」秒。
這將爲皈依做...現在,獲取JavaScript給定的時間間隔做一些事情,你可以使用全局函數setInterval
,像莫德雷德的回答。我在這裏引用,但榮譽和+1對他說:
timer = setInterval(function() {
// do stuff in here
}, 432); // 432 is an arbitrary value, this will fire once every 432 milisseconds.
做檢查的文件for that和for SetTimeout
。
而且正如Matt在這個問題的評論中所說的那樣,Javascript中的計時事件可能並不總是按照您設定的時間間隔準確發射 - 還有其他事情涉及到,您可能會對此做一些研究 - 所以請檢查當前時間通過初始化一個新的Date
對象觸發事件。注意:
var x = Date.now();
是一個簡寫:
var d = new Date();
var x = d.getTime();
在JavaScript中日期的工作可能是初學者有點彆扭......做通知,Date對象的一些方法名稱和屬性可能誤導人。月份以0爲基礎,並且getDay
將返回星期幾而不是當月,因此請務必閱讀一些文檔。除此之外,祝你好運,快樂的編碼!
查看[Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date)對象和[setInterval](https://developer.mozilla) .org/en-US/docs/Web/API/Window.setInterval)方法。 – A1rPun
好的 - 那你的問題是什麼?您將需要使用[Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date)對象獲取當前時間,獲取小時,分鐘和秒,轉換爲秒,然後轉換爲您的格式。使用[setInterval](https://developer.mozilla.org/en-US/docs/Web/API/Window.setInterval)來隨時更新代碼。注意:不要指望'setInterval'是準確的。也就是說,如果你要求它每1000毫秒更新一次,它就會漂移,所以總是通過'Date.now()'獲得實時的時間@ –
@MattBurland Hive mind – A1rPun