要建立乙個日期物件,使用new操作符和date建構函式即可。如下所示:
var date = new date();
在呼叫date函式建構函式而不傳遞引數的情況下,新建立的物件會自動獲取當前日期和時間。
與其他引用型別一樣,date型別也重寫了tolocalestring()、tostring()和valueof()方法,這些型別的返回值與其他型別中的方法不同。date型別的tolocalestring()方法會按照瀏覽器設定的地區相適應的格式返回日期和時間。而tostring()方法通常返回帶有時區資訊的日期和時間。date型別的valueof()方法不會返回字串,而是返回時間的毫秒表示。因此可以方便使用比較操作符來比較日期值。舉個例子:
var date = new date(2019,0,1); //2023年1月1日
var date2 = new date(2019,1,1); //2023年2月1日
alert(date < date2); //true
alert(date > date2); //false
從邏輯上講,2023年1月1日要早於2023年2月1日,此時如果我們說前者小於後者比較符合常理。而表示2023年1月1日的毫秒值小於表示2023年2月1日的毫秒值,因此在首先使用小於操作符比較日期時,返回的結果是true。
date型別還有一些專門用於將日期格式化為字串的方法。
tolocalestring()和tostring()方法一樣,以上這些字串格式方法的輸出也是因瀏覽器而異的,因此哪乙個方法能夠用來在使用者介面顯示一致的日期資訊。
常用的date型別的方法有:
gettime()——返回表示日期的毫秒數,與valueof()方法返回值相同
settime()——以毫秒數設定日期,會改變整個日期
getfullyear()——取得4位數年份(比如:2019)
setfullyear()——設定日期的年份。傳入的年份值必須是4位數(比如:2019)
getmonth()——返回日期中的月份(0~11)
setmonth()——設定日期的月份值。傳入的月份值必須大於0,超過11則增加年份
getdate()——返回日期中的天數(1~31)
setdate()——設定日期中的天數(如果傳入的值超過該月中的天數,則增加月份)
getday()——返回日期中的星期幾(0~6)
gethours()——返回日期中的小時數(0~23)
sethours()——設定日期中的小時數,傳入的值超過了23則增加月份中的天數
getminutes()——返回日期中的分鐘數(0~59)
setminutes()——設定日期中的分鐘數,傳入的值如果超過59則增加小時數
getseconds()——返回日期的秒數(0~59)
setseconds()——設定日期的秒數,如果傳入的值超過59則增加日期中的分鐘數
getmilliseconds()——返回日期中的毫秒數
setmilliseconds()——設定日期中的毫秒數
JavaScript 引用型別
在js中,數值 布林值 null和undefined屬於基本型別,而物件 陣列和函式屬於引用型別。該博文要解決的兩個問題是 author 獵空de date 2012 3 8 ext.onready function test data var obj var arr obj obj.age 23 ...
JavaScript引用型別 Date型別
要建立乙個日期物件,使用new操作符和date建構函式即可 var now new date 在呼叫date建構函式而不傳遞引數的情況下,新建立的物件自動獲得當前日期和時間。如果想根據特定的日期和時間建立日期物件,必須傳入表示該日期的毫秒數 即從utc時間1970年1月1日午夜起至該日期止經過的毫秒...
JavaScript引用型別 Date型別
date型別使用自utc 國際協調時間 1970年1月1日零時 開始經過的毫秒數來儲存日期。有4種方法 var d new date var d new date milliseconds var d new date datestring var d new date year,month,day...