javascript內(nèi)置對象Date案例總結(jié)分析_第1頁
javascript內(nèi)置對象Date案例總結(jié)分析_第2頁
javascript內(nèi)置對象Date案例總結(jié)分析_第3頁
javascript內(nèi)置對象Date案例總結(jié)分析_第4頁
javascript內(nèi)置對象Date案例總結(jié)分析_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第javascript內(nèi)置對象Date案例總結(jié)分析目錄Date的基本使用格式化時(shí)間1.格式化日期-年,月,日2.格式化時(shí),分,秒獲取Date總的毫秒數(shù)(時(shí)間戳)案例-網(wǎng)頁倒計(jì)時(shí)核心算法(重要)結(jié)語

Date的基本使用

內(nèi)置對象Date是構(gòu)造函數(shù),用new創(chuàng)建對象,無參數(shù)時(shí)返回當(dāng)前時(shí)間,可加參數(shù)返回特定時(shí)間

//內(nèi)置對象Date是構(gòu)造函數(shù),用new創(chuàng)建對象,無參數(shù)時(shí)返回當(dāng)前時(shí)間,可加參數(shù)返回特定時(shí)間

varnow_time=newDate();

console.log(now_time);

//年月日之間可以用-或者/

vartime_1=newDate('2025-05-0612:36:15');

vartime_2=newDate('2025/05/06');

console.log(time_1);

console.log(time_2);

格式化時(shí)間

可以從上圖看到返回的時(shí)間格式SunMay06202500:00:00GMT+0800(中國標(biāo)準(zhǔn)時(shí)間)不符合我們中國人的表示習(xí)慣

所以我們需要獲取日期的指定部分,然后進(jìn)行日期格式化。

方法名說明代碼getFullYear()獲取當(dāng)年Obj.getFullYear()getMonth()獲取當(dāng)月,返回0-11Obj.getMonth()getDate()獲取當(dāng)天日期Obj.getDate()getDay()獲取星期幾(周日0到周六6)Obj.getDay()getHours()獲取當(dāng)前小時(shí)Obj.getHours()getMinutes()獲取當(dāng)前分鐘Obj.getMinutes()getSeconds()獲取當(dāng)前秒鐘Obj.getSeconds()

1.格式化日期-年,月,日

//格式化日期-年,月,日

vardate=newDate();//實(shí)例化一個(gè)日期對象

varyear=date.getFullYear();//返回當(dāng)前日期年份

varmonth=date.getMonth()+1;//返回的是0-11,分別對應(yīng)1-12月,所以接果+1才是正確的月數(shù)

year=year10'0'+year:year;

vardates=date.getDate();//返回幾號

dates=dates10'0'+dates:dates;

varday=date.getDay();//返回的是0-6,分別對應(yīng)星期天-星期六

varday_arr=['星期天','星期一','星期二','星期三','星期四','星期五','星期六',]

console.log('今天是:'+year+'年'+month+'月'+dates+'日'+day_arr[day]);

2.格式化時(shí),分,秒

functiongetTime(){

vartime=newDate();

varh=time.getHours();

h=h10'0'+h:h;

varm=time.getMinutes();

m=m10'0'+m:m;

vars=time.getSeconds();

s=s10'0'+s:s;

returnh+':'+m+':'+s;

console.log(getTime());

獲取Date總的毫秒數(shù)(時(shí)間戳)

我們時(shí)??梢钥吹綍r(shí)間戳,那么他是怎么來的呢?

其實(shí)時(shí)間戳表示的是從1970年1月1號到當(dāng)前時(shí)間的總的毫秒數(shù)。

至于為什么是1970年的這個(gè)時(shí)間,感興趣的可以百度看看,十分有趣。

在我們javascript中獲取時(shí)間戳有三種方法。

//獲取Date總的毫秒數(shù)(時(shí)間戳),是從1970年1月1號到當(dāng)前的總的毫秒數(shù)至于為什么是這個(gè)時(shí)間,感興趣的可以百度看看,十分有趣

//1.通過valueOf()或者getTime()方法

vardate=newDate();

console.log(date.valueOf());//得到的是我們當(dāng)前時(shí)間距離19701.1的總的毫秒數(shù)

console.log(date.getTime());

//2.簡單的寫法(最常用的寫法)

vardate=+newDate();

console.log(date);

//3.H5新增的,ie9以下不適用

console.log(Date.now());

案例-網(wǎng)頁倒計(jì)時(shí)核心算法(重要)

1)核心算法:輸入的時(shí)間減去現(xiàn)在的時(shí)問就是利余的時(shí)問,即倒計(jì)時(shí),但是不能拿著時(shí)分秒相減,比如05分減去25分,結(jié)果會(huì)是負(fù)數(shù)的。

2)用時(shí)間載來做。用戶輸入時(shí)間總的老秒數(shù)減去現(xiàn)在時(shí)間的總的毫秒數(shù),得到的就是剩余時(shí)間的毫秒數(shù)。

3)把剩余時(shí)間總的毫秒數(shù)化為秒然后轉(zhuǎn)換為天、時(shí)、分、秒(時(shí)間轉(zhuǎn)換為時(shí)分秒)

轉(zhuǎn)換公式下:

d=parselnt(總秒數(shù)/60/60/24);計(jì)算天數(shù)

h=parselnt(總秒數(shù)/60/60%24);計(jì)算小時(shí)

m=parselnt(總秒數(shù)/60%60);計(jì)算分?jǐn)?shù)

s=parselnt(總秒數(shù)%60);計(jì)算當(dāng)前秒數(shù)

//網(wǎng)頁倒計(jì)時(shí)核心算法

functioncountTime(time){

varnewTime=+newDate();//獲取當(dāng)前總的毫秒數(shù)(時(shí)間戳)

varinputTime=+newDate(time);//得到指定時(shí)間的時(shí)間戳

vartimes=(inputTime-newTime)/1000;//剩余時(shí)間的秒數(shù)

vard=parseInt(times/60/60/24);//天數(shù),取整

d=d10'0'+d:d;//補(bǔ)零

varh=parseInt(times/60/60%24);//時(shí)

h=h10'0'+h:h;

varm=parseInt(times/60%60);//分

m=m10'0'+m:m;

vars=parseInt(times%60);//秒

s=s10'0'+s:s;

returnd+'天'+h+'時(shí)'+m+'

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論