JavaScript標準對象
1、Date
var now = new Date(); now; // Wed Jun 24 2015 19:49:22 GMT+0800 (CST) now.getFullYear(); // 2015, 年份 now.getMonth(); // 5, 月份,註意月份範圍是0~11,5表示六月
註意:獲取月份的範圍是從0開始的,所以要得到正確的月份是要加1 的
可以傳入參數獲取指定的日期
var d = new Date(2015, 5, 19, 20, 15, 30, 123); d; // Fri Jun 19 2015 20:15:30 GMT+0800 (CST)
var d = Date.parse(‘2015-06-24T19:49:22.875+08:00‘); d;// 1435146562875
第二種創建一個指定日期和時間的方法是解析一個符合ISO 8601格式的字符串,但它返回的不是Date
對象,而是一個時間戳。不過有時間戳就可以很容易地把它轉換為一個Date
:
var d = new Date(1435146562875); d; // Wed Jun 24 2015 19:49:22 GMT+0800 (CST) d.getMonth(); // 5
註意:此時使用Date.parse()時傳入的字符串使用實際月份01~12,轉換為Date對象後getMonth()獲取的月份值為0~11。
時間戳是個什麽東西?時間戳是一個自增的整數,它表示從1970年1月1日零時整的GMT時區開始的那一刻,到現在的毫秒數。假設瀏覽器所在電腦的時間是準確的,那麽世界上無論哪個時區的電腦,它們此刻產生的時間戳數字都是一樣的,所以,時間戳可以精確地表示一個時刻,並且與時區無關。
所以,我們只需要傳遞時間戳,或者把時間戳從數據庫裏讀出來,再讓JavaScript自動轉換為當地時間就可以了。
2、RegExp
要做更精確地匹配,可以用[]
表示範圍,比如:
-
[0-9a-zA-Z\_]
可以匹配一個數字、字母或者下劃線; -
[0-9a-zA-Z\_]+
可以匹配至少由一個數字、字母或者下劃線組成的字符串,比如‘a100‘
,‘0_Z‘
,‘js2015‘
等等; -
[a-zA-Z\_\$][0-9a-zA-Z\_\$]*
可以匹配由字母或下劃線、$開頭,後接任意個由一個數字、字母或者下劃線、$組成的字符串,也就是JavaScript允許的變量名; -
[a-zA-Z\_\$][0-9a-zA-Z\_\$]{0, 19}
A|B
可以匹配A或B,所以(J|j)ava(S|s)cript
可以匹配‘JavaScript‘
、‘Javascript‘
、‘javaScript‘
或者‘javascript‘
。
^
表示行的開頭,^\d
表示必須以數字開頭。
$
表示行的結束,\d$
表示必須以數字結束。
你可能註意到了,js
也可以匹配‘jsp‘
,但是加上^js$
就變成了整行匹配,就只能匹配‘js‘
了。
JavaScript標準對象