Date 是一個構造函數,其原型上定義了一些日期方法javascript
Date()java
執行 Date(),返回表示日期的字符串markdown
new Date()函數
沒有參數,返回當前日期實例對象ui
var date = new Date();
console.log(Object.prototype.toString.call(date)); // [Object Date]
date.getFullYear() // 返回年份,如 2020
dae.getMonth() // 返回月份減一,加一獲得月份
date.getDate() // 返回幾號,1 到 31
date.getDay() // 返回周幾,0 到 7,週日開始
date.getHours() // 返回小時
date.getMinutes() // 返回分鐘
date.getSeconds() // 返回秒數
date.getMilliseconds() // 返回毫秒數
// 有 get 一樣有 set 方法
複製代碼
有參數,返回對應的日期spa
var date = new Date(2020, 1, 1, 8, 30, 10);
var date = new Date('2020/1/1 8:30:10');
var date = new Date('2020/01/01 08:30:10');
var date = new Date('2020-1-1 8:30:10');
// Sat Feb 01 2020 8:30:10 GMT+0800 (中國標準時間)
複製代碼
getTime()prototype
返回時間戳,即毫秒數code
計算機紀元時間 1970 年 1 月 1 日 0 點 0 分 0 秒orm
時間戳:某個時間距離計算機紀元時間的通過的毫秒數對象
var dateTime = new Date().getTime(); // 返回當前時間的時間戳
var date = new Date(dateTime); // 返回時間戳對應時間
date.setTime(dateTime); // 以時間戳爲標準設置時間
複製代碼
setInterval
每隔特定的毫秒數執行一次內部函數,從當前開始計時
返回一個數字,是計時器的惟一標識,表明在全部計時器和延時器中的序號
是 window 下的方法
setInterval(function(){
}, 1000) // 匿名函數
funtion Test() {
}
setInterval(test, 1000);
setInterval('test()', 1000); // 字符串形式傳入方法
複製代碼
clearInterval
清除計時器
var timer = setInterval(function(){}, 1000); // timer 是惟一標識,表明在全部計時器中的序號
clearInterval(timer);
複製代碼
setTimout
延遲指定時間執行一次內部函數
返回一個數字,是延時器的惟一標識,表明在全部計時器中和延時器的序號
setTimeout(function(){
}, 1000) // 匿名函數
funtion Test() {
}
setTimeout(test, 1000);
複製代碼
clearTimeout
清除延時器
var timer = setTimeout(function(){}, 1000); // timer 是惟一標識,表明在全部計時器中的序號
clearTimeout(timer);
複製代碼
功能
等待條件知足時執行任務,設定時間內條件未知足則執行回調函數
參數
代碼
function timer(re, fn, space, wait, back) {
if (re()) {
fn();
} else {
var interval = setInterval(function() {
if (re()) {
fn();
clearInterval(interval);
interval = null;
}
}, space || 100);
setTimeout(function() {
if (interval) {
clearInterval(interval);
interval = null;
back && back();
}
}, wait || 3000);
}
}
複製代碼