編寫函式,要求傳入兩個日期時間,返回兩個日期時間之間,相差多少天多少小時多少分鐘,多少秒。
var res =
datereduce()
;
2、因為我們輸入的方式是陣列,且存在時分秒,我們需要格式化一下陣列日期:判定陣列的長度,根據陣列的長度格式化成字串再進行計算:
而且使用者可能寫時分秒,也可能不寫,所以我們分成兩種情況來判斷,對於存在多種情況的判定,建議大家用switch來寫,以便後期進行修改或新增情況。
**如下:
function
formatedatearray
( arr )
return date_str;
}
3、然後就是計算我們的時間差了
function
datereduce
( options )
} console.
log(res)
;
執行**截圖:
我們可以不輸入起始時間,只輸入結束時間,這樣就可以有乙個簡單的倒計時作用。
var res =
datereduce()
;
例如上述**,我們將start設定為now或者不輸入都行。然後在判定的時候利用if來判定是當前的時間還是設定的起始時間即可。
if
(options.start === undefined ||
typeof options.start ===
"string"
)else
執行結果:
剩餘12小時20分19秒到達3月9號。再次重新整理之後;
可以看到時間剩下12小時16分49秒
大家也可以在此基礎上繼續擴充套件,封裝函式也是乙個功能很多的工具哦。
附上源**(增加功能之後的):
function
datereduce
( options )
else
var end_str =
formatedatearray
(options.end)
;var end_d =
newdate
(end_str)
;var reduce_ms = end_d.
gettime()
- start_d.
gettime()
;// 返回天,小時分鐘秒;
return
}function
formatedatearray
( arr )
return date_str;
}var res =
datereduce()
; console.
log(res)
;
js計算時間差
需求 在某個時間點後的n天後做某件事情 分析 1.計算某個時間點與今天當前時間的時間差 這裡要考慮到計算時間差,如果時間格式化成字串後計算,存在日切,年切的問題 2.n天是需求中給出的乙個時間,這裡假設n 7天 某個時間點也是需求中給出的時間,是這樣的格式 2018 01 2 15 59 07 3....
JS 時間差計算
時間差比較 interval d表示查詢精確到天數的之差 interval h表示查詢精確到小時之差 interval m表示查詢精確到分鐘之差 interval s表示查詢精確到秒之差 interval t表示查詢精確到毫秒之差 function datediff interval,date1,d...
JS計算時間差
gettime 方法 方法定義 gettime 方法可返回距 1970 年 1 月 1 日之間的毫秒數。通常我們計算時間差都是通過獲取兩個時間資料,然後分別使用gettime 方法返回與固定的1970 年 1 月 1 日的時間差,通過對返回毫秒數的差,換算成時間單位,得出兩個時間的時間差。開始操作 ...