摘要:實(shí)例一已知日期格式為,計(jì)算相對(duì)于今天的天數(shù)差。在實(shí)踐應(yīng)用中,還會(huì)有各種各樣的關(guān)于時(shí)間操作的需求,歡迎補(bǔ)充,我都將一一解答。
實(shí)例
一:已知日期格式為 "YYYY/MM/DD",計(jì)算相對(duì)于今天的天數(shù)差。
function fromNow(date){ var mTimes = new Date(date); var fromTimes = Date.now() - mTimes.valueOf(); return Math.floor(fromTimes/(24*60*60*1000)); } var date = "2015/09/18"; console.log(fromNow(date));//3
二:以固定格式式輸出n天后的日期
function afterToday(n){ var endTimes = Date.now() + n*24*60*60*1000; var endDate = new Date(endTimes); return endDate.getFullYear()+"/"+(endDate.getMonth()+1)+"/"+endDate.getDate(); } console.log(afterToday(2));//2016/09/23
三:輸出確定日期 n 天后的日期,格式為 "YYYY/MM/DD"
function afterDate(date,n){ var mTimes = new Date(date); var endTimes = mTimes.valueOf() + n*24*60*60*1000; var endDate = new Date(endTimes); return endDate.getFullYear()+"/"+(endDate.getMonth()+1)+"/"+endDate.getDate(); } afterDate("2016/02/28",1);//2016/02/29
說(shuō)明
首先說(shuō)明寫這篇文章的意圖,時(shí)間操作是在js編程的常用的操作,在一般的應(yīng)用中,對(duì)時(shí)間的同步要求并不會(huì)高,大多會(huì)使用本機(jī)時(shí)間,這也讓Date的API顯得繁重。我們只需要深入的理解幾種常用的方法,就可以駕馭 Date ,而不用頻繁的依賴第三方。這里我們僅僅操作日期,不處理time。
Date 對(duì)象是 js 內(nèi)置對(duì)象,其中封裝了全部的關(guān)于時(shí)間操作的方法,均聲明在其原型屬性中,其constructor中有兩個(gè)常用的方法,now()和parse(),其返回都是,70年到現(xiàn)在經(jīng)過(guò)的毫秒數(shù)。還有一個(gè)返回毫秒數(shù)的方法是實(shí)例的valueOf()方法,直接操作毫秒,會(huì)讓我們?cè)谟?jì)算日期關(guān)系上更加靈活和精確。再將毫秒轉(zhuǎn)化為日期時(shí),只需要調(diào)用 Date 的實(shí)例構(gòu)造方法,拼裝字符串即可。
在實(shí)踐應(yīng)用中,還會(huì)有各種各樣的關(guān)于時(shí)間操作的需求,歡迎補(bǔ)充,我都將一一解答。(原創(chuàng)內(nèi)容,歡迎轉(zhuǎn)載)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/80438.html
摘要:構(gòu)造函數(shù)通過(guò)可以進(jìn)行實(shí)例化,得到一個(gè)對(duì)象實(shí)例,值得注意的是如果直接執(zhí)行,將得到一個(gè)時(shí)間字符串。依照此標(biāo)準(zhǔn),在此格式能被表示的最后時(shí)間是年月日,星期二。錯(cuò)誤的計(jì)算及動(dòng)作可能因此產(chǎn)生。 Date 是 JS 中的重要的一個(gè)內(nèi)置對(duì)象,其實(shí)例主要用于處理時(shí)間和日期,其時(shí)間基于 1970-1-1 (世界標(biāo)準(zhǔn)時(shí)間)起的毫秒數(shù),時(shí)間戳長(zhǎng)度為 13 位(不同于 Unix 時(shí)間戳的長(zhǎng)度 10 位)。對(duì)于日...
摘要:實(shí)際上,如果直接將表示日期的字符串傳遞給構(gòu)造函數(shù),也會(huì)在后臺(tái)調(diào)用方法,例如下面的代碼跟前面的是等價(jià)的。構(gòu)造函數(shù)構(gòu)造函數(shù)會(huì)模仿但有一點(diǎn)不同的是,日期和時(shí)間都是基于本地時(shí)區(qū)而非來(lái)創(chuàng)建。兼容性問(wèn)題啊其原因就是非標(biāo)準(zhǔn)日期格式。 一:Date類型介紹 要?jiǎng)?chuàng)建一個(gè)日期對(duì)象,使用new操作符和Date構(gòu)造函數(shù)即可: var now = new Date(); Date.parse()方法 其中Da...
摘要:前端知識(shí)點(diǎn)總結(jié)高級(jí)持續(xù)更新中字符串什么是連續(xù)存儲(chǔ)多個(gè)字符的字符數(shù)組相同下標(biāo)遍歷選取不同類型不同不通用所有字符串都無(wú)權(quán)修改原字符串,總是返回新字符串大小寫轉(zhuǎn)換統(tǒng)一轉(zhuǎn)大寫統(tǒng)一轉(zhuǎn)小寫何時(shí)不區(qū)分大小寫時(shí),都需要先轉(zhuǎn)為一致的大小寫,再比較。 前端知識(shí)點(diǎn)總結(jié)——JS高級(jí)(持續(xù)更新中) 1.字符串 什么是: 連續(xù)存儲(chǔ)多個(gè)字符的字符數(shù)組 相同: 1. 下標(biāo) 2. .length 3. 遍歷 4....
閱讀 797·2021-11-11 16:54
閱讀 1533·2021-08-24 10:01
閱讀 1922·2019-08-30 15:54
閱讀 3303·2019-08-29 14:02
閱讀 3138·2019-08-28 18:22
閱讀 2253·2019-08-28 18:09
閱讀 3715·2019-08-26 10:26
閱讀 2674·2019-08-23 18:23