淺談JavaScript Date 對象

w3c對Date 對象的定義:

Date 對象用于處理日期和時間诡渴。

創(chuàng)建Date 對象:
var myDate=new Date();

注釋:Date 對象會自動把當(dāng)前日期和時間保存為其初始值娘摔。

var date = new Date();
 console.log(date);
顯示系統(tǒng)默認(rèn)時間

這里要說明的是GMT+0800 (CST)是格林尼治時間。就是我們常常說的0度經(jīng)線的地方平時拴驮,也叫格林平時春瞬。格林平時的英文是Greenwich Mean Time,簡稱GMT套啤,實(shí)際上就是UT(universal time )也叫世界時的宽气。這個里說的+0800,北京時間就是東八區(qū)時區(qū)中線120度經(jīng)線的地方平時潜沦。從0度格林經(jīng)線到120度東八區(qū)時區(qū)經(jīng)線萄涯,經(jīng)差為120度,換算成時間為8小時(120除以15)唆鸡。所以格林平時和北京時間差八小時涝影,而且是北京時間比格林平時快8小時,因此是在格林平時的基礎(chǔ)上加8小時的喇闸。

Date 對象屬性

  • constructor 返回對創(chuàng)建此對象的 Date 函數(shù)的引用袄琳。
  • prototype 這個是原型讓我們可以向?qū)ο筇砑訉傩院头椒ā?/li>

這里展開分別說一下constructor屬性和prototype
constructor 屬性返回對創(chuàng)建此對象的 Date 函數(shù)的引用。
實(shí)例:

<script type="text/javascript">
  var date = new Date();

  if (date.constructor==Array) {
    document.write("This is an Array");
  }
  if (date.constructor==Boolean) {
    document.write("This is a Boolean");
  }
  if (date.constructor==Date) {
    document.write("This is a Date");
  }
  if (test.constructor==String){
    document.write("This is a String");
  }
</script>

輸出:

This is a Date

prototype屬性
prototype 利用prototype原型屬性讓我們有能力向?qū)ο筇砑訉傩院头椒ā?br> 語法如下:

object.prototype.name=value

以下的實(shí)例燃乍,我們將展示如何使用 prototype 屬性來向?qū)ο筇砑訉傩裕?/p>

<script type="text/javascript">
    function Person(name,job,born){
      this.name=name;
      this.job=job;
      this.born=born;
    }

    var person = new Person("zhangsan","人民教師",1985);

    Person.prototype.salary=null;
    person.salary=20000;

    console.log(person.salary);
</script>

輸出:

20000

這里需要注意:對象的屬性可以直接修改對象原型上的屬性

 Person.prototype.salary=null;
 person.salary=20000;

接下來,讓我們言歸正傳宛琅,來看Date 對象的方法常用的都有哪些刻蟹,下邊的這個表格來自w3c。

方法 屬性
Date() 返回當(dāng)日的日期和時間嘿辟。
getDate() 從 Date 對象返回一個月中的某一天 (1 ~ 31)舆瘪。
getDay() 從 Date 對象返回一周中的某一天 (0 ~ 6)。
getMonth() 從 Date 對象返回月份 (0 ~ 11)红伦。注意:這里的月份是從索引0開始
getFullYear() 從 Date 對象以四位數(shù)字返回年份英古。
getYear() 請使用 getFullYear() 方法代替。
getHours() 返回 Date 對象的小時 (0 ~ 23)昙读。
getMinutes() 返回 Date 對象的分鐘 (0 ~ 59)召调。
getSeconds() 返回 Date 對象的秒數(shù) (0 ~ 59)。
getMilliseconds() 返回 Date 對象的毫秒(0 ~ 999)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒數(shù)唠叛。
getTimezoneOffset() 返回本地時間與格林威治標(biāo)準(zhǔn)時間 (GMT) 的分鐘差只嚣。
setDate() 設(shè)置 Date 對象中月的某一天 (1 ~ 31)。
setMonth() 設(shè)置 Date 對象中月份 (0 ~ 11)艺沼。
setFullYear() 設(shè)置 Date 對象中的年份(四位數(shù)字)册舞。
setYear() 請使用 setFullYear() 方法代替。
setHours() 設(shè)置 Date 對象中的小時 (0 ~ 23)障般。
setMinutes() 設(shè)置 Date 對象中的分鐘 (0 ~ 59)调鲸。
setSeconds() 設(shè)置 Date 對象中的秒鐘 (0 ~ 59)。
setMilliseconds() 方法 設(shè)置 Date 對象中的毫秒 (0 ~ 999)挽荡。
setTime() 以毫秒設(shè)置 Date 對象线得。
toSource() 返回該對象的源代碼。
toString() 把 Date 對象轉(zhuǎn)換為字符串徐伐。
UTC() 根據(jù)世界時返回 1970 年 1 月 1 日 到指定日期的毫秒數(shù)贯钩。
valueOf() 返回 Date 對象的原始值。
  • 下邊是一個獲取年月日星期的例子
<script type="text/javascript">
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();

    var week = date.getDay();
    switch(week){
        case 0:
            str = "星期日";
            break;
        case 1:
            str = "星期一";
            break;
        case 2:
            str = "星期二";
            break;
        case 3:
            str = "星期三";
            break;
        case 4:
            str = "星期四";
            break;
        case 5:
            str = "星期五";
            break;
        default:
            str = "星期六";
    }

    var current = year + '年' + addZero(month) + '月' + addZero(day) + '日';

    console.log("今天是:" + current + ' ' + str);

    function addZero(obj){
        if(obj<10){
            return '0' + obj;
        }else{
            return obj;
        }
    }
</script>

輸出:

今天是:2017年06月23日 星期五
  • 下邊是一個倒計時的例子
<script type="text/javascript">
    function fnTime() {
        var time1 = new Date();
        var time2 = new Date("2018/05/02 15:00:00");
        var countDown = time2 - time1;
        var oTime = document.getElementById("time");

        var t = countDown / 1000;  //將毫秒換算成秒

        var day = Math.floor( t / (60*60*24) );
        var h = Math.floor( t / (60*60) % 24 );
        var m = Math.floor( t / 60 % 60 );
        var s = Math.floor( t % 60 );

        var str = day + '天' + h + '小時' + m + '分鐘' + s + '秒';

        oTime.innerHTML = str;

        if(countDown<=0){
            clearInterval(timer);
        }
    }

    var timer = setInterval(fnTime,0);
    </script>

輸入:

312天23小時1分鐘4秒
結(jié)束

以上是常用的兩個例子办素,另外本文展示了平時在我們工作中用到時的一些手冊或者方法角雷。如有幫助可收藏并查詢,謝謝性穿。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末勺三,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子需曾,更是在濱河造成了極大的恐慌吗坚,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件呆万,死亡現(xiàn)場離奇詭異商源,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)谋减,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門牡彻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人出爹,你說我怎么就攤上這事庄吼。” “怎么了严就?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵总寻,是天一觀的道長。 經(jīng)常有香客問我梢为,道長渐行,這世上最難降的妖魔是什么轰坊? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮殊轴,結(jié)果婚禮上衰倦,老公的妹妹穿的比我還像新娘。我一直安慰自己旁理,他們只是感情好樊零,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著孽文,像睡著了一般驻襟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上芋哭,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天沉衣,我揣著相機(jī)與錄音,去河邊找鬼减牺。 笑死豌习,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的拔疚。 我是一名探鬼主播肥隆,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼稚失!你這毒婦竟也來了栋艳?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤句各,失蹤者是張志新(化名)和其女友劉穎吸占,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體凿宾,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡矾屯,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了菌湃。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片问拘。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖惧所,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情绪杏,我是刑警寧澤下愈,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站蕾久,受9級特大地震影響势似,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一履因、第九天 我趴在偏房一處隱蔽的房頂上張望障簿。 院中可真熱鬧,春花似錦栅迄、人聲如沸站故。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽西篓。三九已至,卻和暖如春憋活,著一層夾襖步出監(jiān)牢的瞬間岂津,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工悦即, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留吮成,地道東北人。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓辜梳,卻偏偏與公主長得像粱甫,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子冗美,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 原文: https://github.com/ecomfe/spec/blob/master/javascript...
    zock閱讀 3,375評論 2 36
  • 單例模式 適用場景:可能會在場景中使用到對象魔种,但只有一個實(shí)例,加載時并不主動創(chuàng)建粉洼,需要時才創(chuàng)建 最常見的單例模式节预,...
    Obeing閱讀 2,076評論 1 10
  • 第1章 認(rèn)識JS JavaScript能做什么?1.增強(qiáng)頁面動態(tài)效果(如:下拉菜單属韧、圖片輪播安拟、信息滾動等)2.實(shí)現(xiàn)...
    mo默22閱讀 1,302評論 0 5
  • 轉(zhuǎn)載請聲明出處 博客原文 隨手翻閱以前的學(xué)習(xí)筆記,順便整理一下放在這里宵喂,方便自己復(fù)習(xí)糠赦,也希望你有也有幫助吧 第一課...
    程序員poetry閱讀 12,675評論 13 94
  • 忌生生忌偷淚泣, 眾生眸中無追議锅棕。 赤目逼進(jìn)淚千滴拙泽, 奮筆疾書盡傷蠡。 詩詞安能勝號吼裸燎, 歌賦安能對潮鳴顾瞻。 掩顏孤...
    水美人_8137閱讀 199評論 0 0