Javascript中Date類型和Math類型詳解
Date類型
ECMASCript中的Date類型是在早期中Java中的java.util.Date類基礎(chǔ)上構(gòu)建的。為此Date類型使用自UTC(國際協(xié)調(diào)時間)1970年1月1日午夜(0時)開始經(jīng)過的毫秒數(shù)來保存日期。
創(chuàng)建日期對象
1.創(chuàng)建當(dāng)前日期。不需要傳入?yún)?shù)
2.創(chuàng)建指定日期。需要傳入?yún)?shù),必須傳入表示該日期的毫秒數(shù)(即從1970年1月1日午夜起至該日期止經(jīng)過的毫秒數(shù))。為了簡化這一計算過程,ECMAScript提供了兩個方法:Date.parse()和Date.UTC()。
var now = new Date()//新創(chuàng)建的對象自動獲得當(dāng)前日期和時間 var someDate = new Date('May 25, 2004') var allFives = new Date(2015, 4, 4, 17, 55, 55)
Date.parse()和Date.UTC()
Date.parse()
接收一個表示日期的字符串參數(shù),然后嘗試根據(jù)這個字符串返回相應(yīng)日期的毫秒數(shù)
var someDate = new Date(Date.parse('May 25,2015'))
Note:ECMA-262沒有定義Date.parse()應(yīng)該支持那種日期格式,因此這個方法因?qū)崿F(xiàn)而異,而且通常因地區(qū)而異。而實際上將表示日期的字符串傳遞給Date構(gòu)造函數(shù),也會在后臺調(diào)用Date.parse()。
Date.UTC()
參數(shù)分別是:年份,基于0的月份,日,小時,分鐘,秒,以 及毫秒數(shù)。只有前兩個參數(shù)是必須的。如果省略其他參數(shù),則統(tǒng)統(tǒng)假設(shè)為0.
// GMT時間2016年1月1日午夜0時 var M = new Date(Date.UTC(2016, 0)); // GMT時間2015年5月5日下午5:55:55 var allFives = new Date(Date.UTC(2015, 4, 4, 17, 55, 55));
Note:Date構(gòu)造函數(shù)也會模仿Date.UTC(),但有一點明顯不同:日期和時間都基于本地時區(qū)而非GMT創(chuàng)建。不過Date構(gòu)造函數(shù)仍與Date.UTCf()接收的參數(shù)相同。
Date.now()
返回調(diào)用這個方法時的日期和時間的毫秒數(shù)。
// 取得開始時間 var start = Date.now(); // 調(diào)用函數(shù) doSomthing(); // 取得停止時間 var stop = Date.now(); result = stop - start;
兼容性:IE9+,F(xiàn)irfox3+,Safari3+,Opera10.5,Chrome。在不支持它的瀏覽器中,使用+操作符把Date對象轉(zhuǎn)換成字符串,也可以達(dá)到同樣目的
日期格式化方法
將日期格式化為字符串的方法
- toDateString()
- toTimeString()
- toLocalDateString()
- toLocalTimeString()
- toUTCString()
推薦:toUTCString()
Note:UTC日期指的是沒有時區(qū)偏差的情況下(將日期轉(zhuǎn)換為GMT時間)的日期值。
Math類型
min( )和max( )
var value = [1,2,3,4,5,6,7,8]; var max = Math.max.apply(Math, values);
舍入方法
Math.ceil( ):向上舍入 Math.floor( ):向下舍入 Math.round( ):四舍五入 random( ) Math.random( )方法返回介于0和1之間的一個隨機數(shù),不包括0和1 var num = Math.floor(Math.random()*10, + 1)//返回1-10之間的數(shù)
相關(guān)文章
深入理解JavaScript系列(36):設(shè)計模式之中介者模式詳解
這篇文章主要介紹了深入理解JavaScript系列(36):設(shè)計模式之中介者模式詳解,中介者模式(Mediator)是指用一個中介對象來封裝一系列的對象交互,需要的朋友可以參考下2015-03-03JavaScript中反正弦函數(shù)Math.asin()的使用簡介
這篇文章主要介紹了JavaScript中反正弦函數(shù)Math.asin()的使用,是JS入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-06-06JavaScript DOM 學(xué)習(xí)第二章 編輯文本
在這一章我會給出一個在CMS里非常有用的更新頁面的代碼。在任一段落點擊鼠標(biāo)你就可以修改了。完成以后點擊按鈕,修改的文本就顯示了。2010-02-02