時(shí)間對(duì)象
Date
Date 是 js 的一個(gè)內(nèi)置對(duì)象,也叫內(nèi)置構(gòu)造函數(shù)。提供了一堆的方法幫助我們更方便的操作 時(shí)間
創(chuàng)建時(shí)間:new Date()
獲取時(shí)間對(duì)象
new Date() 在不傳遞參數(shù)的情況下是默認(rèn)返回當(dāng)前時(shí)間
¡ 當(dāng)前終端的時(shí)間信息
¡ 注意: 和你終端設(shè)置的時(shí)區(qū)有關(guān)系
var time = new Date()
console.log(time) // 當(dāng)前時(shí)間 Thu Sep 30 2021 11:05:10 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
new Date() 在傳入?yún)?shù)的時(shí)候,可以獲取到一個(gè)你傳遞進(jìn)去的時(shí)間
var time = new Date('2019-03-03 13:11:11')
console.log(time) // Sun Mar 03 2019 13:11:11 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
創(chuàng)建一個(gè)指定時(shí)間的時(shí)間對(duì)象
可以通過兩種方式來創(chuàng)建一個(gè)時(shí)間對(duì)象傳遞數(shù)字和傳遞字符串
傳遞數(shù)字
new Date() 傳遞的參數(shù)有多種情況
¡ 至少傳遞兩個(gè)數(shù)字, 一個(gè)不好使
n 傳遞一個(gè)代表的是一個(gè)毫秒數(shù) 指的是格林威治時(shí)間到你傳遞的毫秒數(shù)
n 格林威治時(shí)間:值的是1970年1月1日0時(shí)0分0秒開始到現(xiàn)在的一個(gè)時(shí)間
¡ 每一個(gè)數(shù)字都會(huì)自動(dòng)進(jìn)位
1.傳遞兩個(gè)數(shù)字,第一個(gè)表示年,第二個(gè)表示月份
第二個(gè)參數(shù)是表示月份的,但是這里需要注意這里的1月分是從0開始,也就是說0就表示1月分,11表示12月份
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
var time = new Date(2021, 09) // 月份從 0 開始計(jì)數(shù),0 表示 1月,11 表示 12月
console.log(time) // Fri Oct 01 2021 00:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
//之傳入一個(gè)數(shù)字的情況
//得到的是 從格林威治時(shí)間向后推進(jìn) 2021ms
// 格林威治時(shí)間: 1970 年 1 月 1 日 0 點(diǎn) 0 分 0 秒
var time1 = new Date(2021)
console.log(time1) // Thu Jan 01 1970 08:00:02 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
</script>
</body>
</html>
2. 傳遞三個(gè)數(shù)字,前兩個(gè)不變,第三個(gè)表示該月份的第幾天,從 1 到 31
var time = new Date(2019, 00, 05)
console.log(time) // Sat Jan 05 2019 00:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
3. 傳遞四個(gè)數(shù)字,前三個(gè)不變,第四個(gè)表示當(dāng)天的幾點(diǎn),從 0 到 23
var time = new Date(2019, 00, 05, 22)
console.log(time) // Sat Jan 05 2019 22:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
4. 傳遞五個(gè)數(shù)字,前四個(gè)不變,第五個(gè)表示的是該小時(shí)的多少分鐘,從 0 到 59
var time = new Date(2019, 00, 05, 22, 33)
console.log(time) // Sat Jan 05 2019 22:33:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
5. 傳遞六個(gè)數(shù)字,前五個(gè)不變,第六個(gè)表示該分鐘的多少秒,從 0 到 59
var time = new Date(2019, 00, 05, 22, 33, 55)
console.log(time) // Sat Jan 05 2019 22:33:55 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
傳遞字符串
1. 傳入字符串的形式
a. 注意:當(dāng)你傳遞字符串的時(shí)候, 1 表示 1 月, 12 表示 12 月
b. 年月日 和 時(shí)分秒之間一定要有一個(gè)空格
//傳遞參數(shù)形式一
console.log(new Date('2019'))
// Tue Jan 01 2019 08:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019-02'))
// Fri Feb 01 2019 08:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019-02-03'))
// Sun Feb 03 2019 08:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019-02-03 13:'))
// Sun Feb 03 2019 13:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019-02-03 13:13:'))
// Sun Feb 03 2019 13:13:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019-02-03 13:13:13'))
// Sun Feb 03 2019 13:13:13 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
//傳遞參數(shù)形式二
console.log(new Date('2019'))
// Tue Jan 01 2019 08:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019/02'))
// Fri Feb 01 2019 08:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019/02/03'))
// Sun Feb 03 2019 08:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019/02/03 13:'))
// Sun Feb 03 2019 13:00:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019/02/03 13:13:'))
// Sun Feb 03 2019 13:13:00 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
console.log(new Date('2019/02/03 13:13:13'))
// Sun Feb 03 2019 13:13:13 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)