Javascript日期函數 ? ? ?
? Date(日期)對象可以使用Date()構造器來創建,在前面的教程中我們已經介紹了Date()構造器,這里就不重復敘述。它沒有參數,返回的數值就是當前的日期。下面的表格
顯示了為日期構造器的有效輸入: ?
? ?
? var ? today ? = ? new ? Date(); ? ?
? ? 返回當前的日期和時間 ? ?
? ? ?
? var ? newyear ? = ? new ? Date(December ? 31, ? 1998 ? 23:59:59); ? ?
? ? 輸入的是表單的字符串 ? “月 ? 日,年 ? 小時:分鐘:秒” ? ?
? ? ?
? var ? bday ? = ? new ? Date(75, ? 1, ? 16); ? ?
? ? 參數是年份,月,日 ? ?
? ? ?
? var ? bday ? = ? new ? Date(75, ? 1, ? 16, ? 12, ? 0, ? 0); ? ?
? ? 參數是年份,月,日,小時,分鐘,秒 ? ?
? ? ?
? ?
? ?
? 這里作點補充:月份是從0
開始的,比如一月份=0,二月份=1,三月份=3等等。 ?
? ?
? 從上面可以看出創建一個日期對象是相對地簡單,以下的表格是一系列的函數可以用于改變或者訪問這些對象的屬性: ?
? ?
? 日期訪問
方法 ?
? ?
? Method(方法) ? ?
? ? Description ? (描述) ? ?
? ? Value(數值) ? ?
? ? ?
? getYear() ? ?
? ? 返回年份的最后兩位數字 ? ?
? ? 2001 ? ?
? ? ?
? getMonth() ? ?
? ? 返回年份中的第幾月(0到11) ? ?
? ? 5 ? ?
? ? ?
? getDate() ? ?
? ? 返回月份中的第幾日(1到31) ? ?
? ? 2 ? ?
? ? ?
? getDay() ? ?
? ? 返回星期中的第幾天 ? (0到6) ? ?
? ? 6 ? ?
? ? ?
? getTimezoneOffset() ? ?
? ? 返回當地時間與格林尼治天文臺平均時間的差別 ? ?
? ? -480 ? (-8h) ? ?
? ? ?
? getHours() ? ?
? ? 返回一天中的時針點數(0到23) ? ?
? ? 16 ? ?
? ? ?
? getMinutes() ? ?
? ? 返回分鐘 ? (0..59) ? ?
? ? 8 ? ?
? ? ?
? getSeconds() ? ?
? ? 返回時間的秒 ? (0到59) ? ?
? ? 24 ? ?
? ? ?
? getTime() ? ?
? ? 返回自從公元1970年1月1日的毫秒數 ? ?
? ? 991469304470 ? ?
? ? ?
? ?
? ?
? 這里注意:IE
瀏覽器的一些版本返回Timezoneoffset數值是用錯誤的符號,比如用”-”代替”+”等等。 ?
? ?
? 日期設置方法 ?
? ?
? setDate() ? ?
? ?
設置每月中的第幾天(從0到30) ? ?
? ? ?
? setHours() ? ?
? ? 設置小時(從0到23) ? ?
? ? ?
? setMinutes() ? ?
? ? 設置分鐘(從0到59) ? ?
? ? ?
? setMonth() ? ?
? ? 設置月份(從0到11) ? ?
? ? ?
? setSeconds() ? ?
? ? 設置秒數(從0到59) ? ?
? ? ?
? setTime() ? ?
? ? 設置時間(從公元以來的毫秒數) ? ?
? ? ?
? setYear() ? ?
? ? 設置年份 ? ?
? ? ?
? ?
? ?
? 其它的日期方法 ?
? ?
? parse ? ?
? ? 轉化日期字符串為自從公元以來的毫秒數,比如Date.parse(“date ? string”) ? ?
? ? ?
? toString() ? ?
? ? Sat ? Jun ? 2 ? 16:08:24 ? UTC+0800 ? 2001 ? ?
? ? ?
? toGMTString() ? ?
? ? Sat, ? 2 ? Jun ? 2001 ? 08:08:24 ? UTC ? ?
? ? ?
? toLocaleString() ? ?
? ? 2001年6月2日 ? 16:08:24 ? ?
? ? ?
? ?
? ?
? 所有的這些函數引用于獨立的日期對象。如果你具有深厚的Java
編程背景,那么你可以將它們認為是Date類的一些公共的方法而已。下面給出一個典型的例子來設置日期對象到當前時間加1年: ? ?
? ?
? var ? nextYear ? = ? new ? Date(); ? // ? 初始化日期對象 ?
? ?
? nextyear.setYear(nextYear.getYear() ? + ? 1); ? // ? 增加1年 ?
? ?
? 實際上,parse函數是Date對象的一個方法,而不是一個獨立的日期變量,如果使用Java術語,它就稱為Date類的一個靜態方法。這個正是我們為什么使用Date.pase()而不使用somedate.parse()的原因啦。