Js计算间隔天数和Date对象
1、工作里遇到了計(jì)算兩個(gè)日期的間隔天數(shù)問(wèn)題,這個(gè)問(wèn)題比較簡(jiǎn)單,只需要按照輸入的日期,分別取出年月日,用new Date(year, month, date)的方法創(chuàng)建Date對(duì)象,直接對(duì)Date對(duì)象進(jìn)行運(yùn)算,可以得到兩日期的間隔毫秒數(shù),對(duì)之進(jìn)行換算就可以得到天數(shù)了。
具體代碼:
1 function showDays() { 2 var start_day = document.getElementById("date1").value.split("-");//起始日期 3 var end_day = document.getElementById("date2").value.split("-");//結(jié)束日期 4 console.log(start_day + " to " + end_day); 5 var start_obj = new Date(start_day[0], start_day[1] - 1, start_day[2]);//月份是從0開(kāi)始計(jì)算,所以這里需要減一 6 var end_obj = new Date(end_day[0], end_day[1] - 1, end_day[2]); 7 console.log(start_obj + " to " + end_obj); 8 console.log((end_obj - start_obj) / (1000 * 3600 * 24)); 9 }2、借此機(jī)會(huì)總結(jié)一下Date對(duì)象的特性和相關(guān)方法
1) Date對(duì)象的定義:
1 var date1 = new Date();//根據(jù)當(dāng)前時(shí)間創(chuàng)建Date對(duì)象 2 var date2 = new Date(dateVal);//根據(jù)給定的毫秒數(shù),從1970年1月1日開(kāi)始計(jì)算日期,創(chuàng)建Date對(duì)象 3 var date3 = new Date(year, month, date[, hours[, minutes[, seconds[,ms]]]]);//根據(jù)給定的時(shí)間創(chuàng)建Date對(duì)象要知道,Date對(duì)象存放時(shí)間的度量是毫秒,方式是以從1970年1月1日開(kāi)始計(jì)算的毫秒數(shù)來(lái)表示特定的時(shí)間。
要注意用給定的時(shí)間來(lái)創(chuàng)建時(shí)間對(duì)象時(shí),Date對(duì)象在月份的表示上是從0~11,所以要對(duì)月份減一。
2) Date對(duì)象的靜態(tài)方法:
Date.parse():解析一個(gè)日期時(shí)間字符串,并返回1970/1/1午夜距離該日期時(shí)間的毫秒數(shù)。
Date.UTC():根據(jù)世界時(shí)返回1970年1月1日到指定日期的毫秒數(shù),參數(shù)是按照指定格式的日期和時(shí)間。
簡(jiǎn)單的說(shuō),Date.perse()對(duì)于時(shí)間的解析和本地設(shè)置的時(shí)區(qū)有關(guān),而且支持參數(shù)中出現(xiàn)月份的英文縮寫(xiě)和星期幾的英文縮寫(xiě),實(shí)際上,在調(diào)用Date()對(duì)象的構(gòu)造方法時(shí),會(huì)在后臺(tái)先調(diào)用Date.parse()來(lái)解析傳入的參數(shù),也是說(shuō)下面的代碼是等價(jià)的:
1 var date1 = new Date("Oct, 12, 2015"); 2 var date2 = new Date(Date.parse("Oct, 12, 2015"));而Date.TUC()也是返回毫秒數(shù),但是Date.TUC()使用的參數(shù)不一樣,Date.UTC()的參數(shù)分別是年份、從0開(kāi)始算的月份(0到11)、日期(1到31)、小時(shí)數(shù)(0到23)、分鐘、秒以及毫秒數(shù),其中只有年和月是必須的。沒(méi)有提供日期時(shí),默認(rèn)為1,其他的的參數(shù)沒(méi)有提供時(shí)都默認(rèn)為0。
3) Date對(duì)象的常用方法
比較常用的比如getDate(),getDay(),getMonth(),getFullYear()等等,需要注意的是月份和星期幾都是從0開(kāi)始的。
轉(zhuǎn)載于:https://www.cnblogs.com/s1nker/p/4753646.html
總結(jié)
以上是生活随笔為你收集整理的Js计算间隔天数和Date对象的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: IOS弹出视图preferredCont
- 下一篇: (笔试题)路径走法