首頁 > 軟體

JS中Date的一些常用方法小結

2022-10-30 14:00:22

內建物件Date

Date物件在實際開發中,也使用得非常頻繁,它是一個內建物件,用於表示日期和時間。

Date是用來處理日期和時間的物件,但是與Math物件不同的是:Date是一個建構函式,需要範例化之後才能使用。

接下來第一步:建立Date物件

建立Date物件

建立Date物件有兩種方法:

  • 建立時不傳引數:
    在不傳遞引數的情況下,最後建立的結果是返回系統當前的時間物件

    var date = new Date(); console.log(date); // Wed Sep 28 2022 18:06:49 GMT+0800 (中國標準時間) console.log(typeof date); // object

  • 建立時傳遞引數:
    傳遞引數時表示建立指定時間的物件,引數可以是字串,也可以是數位,還可以是時間戳。我們按照傳遞引數的型別來分別講解。

  • 引數為字串

    var date = new Date("2022-09-28 18:06:49"); var date = new Date("2022/09/28 18:06:49"); var date = new Date("2022-09-28T18:06:49"); var date = new Date("2022/09/28T18:06:49"); var date = new Date("2022-09-28"); var date = new Date("2022/09/28"); var date = new Date("2022-09-28T00:00:00"); var date = new Date("2022/09/28T00:00:00");

通過上面的程式碼,我們可以看到在將時間字串作為引數傳入的時候,我們要遵循的格式就是:年月日 具體時間,其中年月日之間使用-或者/連線,具體時間使用:連線;年月日和具體時間的連線可以使用空格隔開或者T隔開。

  • 引數為多個數位

    var date = new Date(x,y,z,a,b,c,d);

  • x:表示年份,必須傳遞,否則會報錯
  • y: 表示月份,從0開始,0表示1月,1表示2月,以此類推,如果不傳遞,預設為0
  • z: 表示日期,如果不傳遞,預設為1
  • a: 表示小時,如果不傳遞,預設為0
  • b: 表示分鐘,如果不傳遞,預設為0
  • c: 表示秒,如果不傳遞,預設為0
  • d: 表示毫秒,如果不傳遞,預設為0

多個引數之間我們使用逗號間隔,如果不傳遞的引數,會使用預設值(年份除外,年份必須傳參)。

  • 引數為時間戳

    var date = new Date(時間戳);

日期的格式化

在實際開發中,我們經常需要將日期格式化,比如:將日期格式化為:2022-09-28 18:06:49,這個時候我們就需要使用到Date物件的format方法。

或者我們需要獲取日期的指定部分,這個時候就需要用到Date物件自帶的方法了。

Date物件自帶的方法

方法名含義備註
getFullYear()獲取年份 
getMonth()獲取月:0-110代表一月
getDate()獲取日:1-31 
getDay()獲取星期:0-60代表週日;1代表週一
getHours()獲取小時:0-23 
getMinutes()獲取分鐘:0-59 
getSeconds()獲取秒:0-59 
getMilliseconds()獲取毫秒1s = 1000ms

獲取時間戳

什麼是時間戳呢?

時間戳就是從格林威治標準時間的1970年1月1日,0時0分0秒到當前日期所花費的毫秒數(1秒 = 1000毫秒)。

那為什麼需要時間戳呢?

這是因為在計算機中,時間是以數位的形式儲存的,而不是以字串的形式儲存的,所以我們需要將時間轉換為數位,這個數位就是時間戳。
而時間戳的存在就是為了統一時間的單位。

如何獲取時間戳呢?

下面集中常見的方法:

  • +new Date():獲取當前時間的時間戳

    value = +new Date();

  • Date物件的getTime方法

    var date = new Date();

  • Date物件的valueOf方法

    var date = new Date();

這三種方法都可以獲取當前時間的時間戳。使用頻率從上往下一次遞減。

附:獲得Date總的毫秒數(距離1970年1月1號過了多少毫秒)

valueOf();

var date = new Date();
console.log(date.valueOf());//1628750819687

getTime();

var date = new Date();
console.log(date.getTime());//1628750819687

簡單寫法

var date1 = +new Date();
console.log(date1);//1628750819687

H5新增的方法

console.log(Date.now());//1628750819687

總結

到此這篇關於JS中Date的一些常用方法的文章就介紹到這了,更多相關JS Date常用方法內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com