js時間對象Date()
Date ()是一個專門用來創建時間對象的,是一個複雜數據類型,具有讀寫屬性
語法: var time = new Date()
返回值:當前終端的時間
// 1.創建當前時間對象 var time = new Date() // 2.創建指定日期的時間對象,至少傳遞兩個參數,分別是:年,月,日,時,分,秒,毫秒 需要注意的是這裡的月是從0開始的
// 如果輸入的數字超出範圍會自定進位 var time = new Date(2021,1,1,12,30,30,999)
// 3.通過傳遞字元串創建,下面的月份是從1開始的
var time = new Date('2020-12-12 12:12:12')
var time = new Date('2020/12/12 12:12:12')
// 4.通過時間戳創建
var time = new Date(1666666666666)
獲取時間對象的方法:
1.getFullYear() 語法:時間對象.getFullYear() 返回值:獲取當前年份資訊 number數據類型 2.getMonth() 語法:時間對象.getMonth() 返回值:獲取當前月份資訊,0-11 number數據類型 3.getDate() 語法:時間對象.getDate() 返回值:獲取當前日資訊 1-31 number數據類型 4.getHours() 語法:時間對象.getHours() 返回值:獲取當前小時資訊,0-23 number數據類型 5.getMinutes() 語法:時間對象.getMinutes() 返回值:獲取當前分鐘資訊 0-59 number數據類型 6.getSeconds() 語法:時間對象.getSeconds() 返回值:獲取當前秒鐘資訊,0-59 number數據類型 7.getMilliseconds() 語法:時間對象.getMilliseconds() 返回值:獲取當前毫秒資訊 0-999 number數據類型 //前面多了個UTC獲取到的是標準時間,中國時區會多8小時
8.getUTCFullYear()
語法:時間對象.getUTCFullYear()
返回值:獲取UTC模式下的年份資訊 number數據類型
9.getUTCMonth()
語法:時間對象.getUTCMonth()
返回值:獲取UTC模式下的月份資訊,0-11 number數據類型
10.getUTCDate()
語法:時間對象.getUTCDate()
返回值:獲取UTC模式下的日資訊 1-31 number數據類型
11.getUTCHours()
語法:時間對象.getUTCHours()
返回值:獲取UTC模式下的小時資訊,0-23 number數據類型
12.getUTCMinutes()
語法:時間對象.getUTCMinutes()
返回值:獲取UTC模式下的分鐘資訊 0-59 number數據類型
13.getUTCSeconds()
語法:時間對象.getUTCSeconds()
返回值:獲取UTC模式下的秒鐘資訊,0-59 number數據類型
14.getUTCMilliseconds()
語法:時間對象.getUTCMilliseconds()
返回值:獲取UTC模式下的毫秒資訊 0-999 number數據類型
15.getDay() 語法:時間對象.getDay() 返回值:該時間對象的周資訊,0-6 number數據類型 16.getTime() 語法:時間對象.getTime() 返回值:該時間對象的時間戳, number數據類型 //時間對象到時間元年過了多少毫秒
設置時間對象資訊的方法
1.setFullYear() 語法:時間對象.setFullYear(要設置的年) 作用:修改該對象的年份資訊 2.setMonth() 語法:時間對象.setMonth(要設置的) 作用:修改該對象的月份資訊,0-11 3.setDate() 語法:時間對象.setDate(要設置的) 作用:修改該對象的日資訊 1-31 number數據類型 4.setHours() 語法:時間對象.setHours(要設置的) 作用:修改該對象的小時資訊,0-23 number數據類型 5.setMinutes() 語法:時間對象.setMinutes(要設置的) 作用:修改該對象的分鐘資訊 0-59 number數據類型 6.setSeconds() 語法:時間對象.setSeconds(要設置的) 作用:修改該對象的秒鐘資訊,0-59 number數據類型 7.setMilliseconds() 語法:時間對象.setMilliseconds(要設置的) 作用:修改該對象的毫秒資訊 0-999 number數據類型 //還有一套一樣的 前面多了個UTC設置標準時間,中國時區會多8小時 //時間對象.setUTCxxxx() 8.setDay() 語法:時間對象.setDay(要設置的) 作用:修改該對象的周幾資訊,0-6 number數據類型 9.setTime() 語法:時間對象.setTime(時間戳) 作用:直接定位到指定時間 //時間對象到時間元年過了多少毫秒
計算兩個時間的時間差—-兩個時間節點之間相差xx天xx時xx分xx秒
準備兩個時間對象,一個現在的,一個將來或者過去的
let time1 = new Date(); let time2 = new Date('2018-7-27 21:27:27'); // 使用時間戳相減 let diffTime = time1.getTime() - time2.getTime(); // 取絕對值後求秒數在取整 diffTime = Math.round(Math.abs(diffTime) / 1000 ); console.log(Math.abs(diffTime)); //換算 let year = parseInt(diffTime / ( 60 * 60 * 24 * 30 * 12) ) let month = parseInt(diffTime % ( 60 * 60 * 24 * 30 * 12) / ( 60 * 60 * 24 * 30)) let day = parseInt(diffTime % ( 60 * 60 * 24 * 30)/ ( 60 * 60 * 24 )) let hours = parseInt(diffTime % ( 60 * 60 * 24 ) / ( 60 * 60 )) let minutes = parseInt(diffTime % ( 60 * 60 ) / 60 ) let secondes = parseInt(diffTime % 60)
console.log("兩個時間相差"+year+"年"+month+"月"+day+"天"+hours+"小時"+minutes+"分鐘"+secondes+"秒")