與其他引用類型一樣,Date類型也重寫了toLocaleString()、toString()和valueOf()方法;但這些方法返回的值與其他類型中的方法不同。Date類型的toLocaleString()方法會按照與瀏覽器設(shè)置的地區(qū)相適應(yīng)的格式返回日期和時間。這大致意味著時間格式中會包含AM或PM,但不會包含時區(qū)信息(當(dāng)然,具體的格式會因瀏覽器而異)。而toString()方法則通常返回帶有時區(qū)信息的日期和時間,其中時間一般以軍用時間(即小時的范圍是0到23)表示。以下給出了在不同瀏覽器中調(diào)用toLocaleString()和toString()方法,輸出PST (Pacific Standard Time,太平洋標(biāo)準(zhǔn)時間)時間2007年2月1日午夜零時的結(jié)果:
Internet Explorer 7
toLocaleString() - Thursday, February 01, 2007 12:00:00 AM
toString() - Thu Feb 1 00:00:00 PST 2007
Firefox 2
toLocaleString() - Thursday, February 01, 2007 12:00:00 AM
toString() - Thu Feb 01 2007 00:00:00 GMT - 0800 (Pacific Standard Time)
Safari3
toLocaleString() - Thursday, February 01, 2007 00:00:00
toString() - Thu Feb 01 2007 00:00:00 GMT - 0800 (Pacific Standard Time)
Chrome 0.2
toLoc:aleString() - Thu Feb 01 2007 00:00:00 GMT - 0800 (Pacific Standard Time)
toString() - Thu Feb 01 2007 00:00:00 GMT - 0800 (Pacific Standard Time)
Opera 9
toLocaleString()-2 /1/2007 12: 00: 00 AM
toString() - Thu, 01 Feb 2007 00:00:00 GMT - 0800
顯然,這兩個方法在不同的瀏覽器中返回的日期和時間格式可謂大相徑庭。事實上,toLocaleString()和toString()的這一差別僅在調(diào)試代碼時比較有用,而在顯示日期和時間時沒有什么價值。 至于Date類型的valueOf()方法,則根本不返回字符串,而是返回日期的毫秒表示。因此,可以方便使用比較操作符(小于或大于)來比較日期值。請看下面的例子:
var datel=new Date(2007, 0, 1); //"January l,2007"
var date2=new Date(2007, 1, 1); //"February l,2007"
alert(datel alert (datel>date2); //false
從邏輯上講,2007年1月1日要早于2007年2月1日,此時如果我們說前者小于后者比較符合常理。而表示2007年1月1日的毫秒值小于表示2007年2月1日的毫秒值,因此在首先使用小于操作符比較日期時,返回的結(jié)果是true。這樣,就為我們比較日期提供了極大方便。
希望本文對廣大站長或從事企業(yè)網(wǎng)站建設(shè)公司的團隊有所幫助,如對此不太理解的,可以與南昌網(wǎng)站建設(shè)公司百恒網(wǎng)絡(luò)技術(shù)部聯(lián)系。我們很高興與廣大站長和從事企業(yè)網(wǎng)站建設(shè)公司技術(shù)人員分享我們的技術(shù)和經(jīng)驗。