1. 程式人生 > >JavaScript標準對象

JavaScript標準對象

假設 1970年1月1日 入參 ear org etime time 創建 數據庫

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}

    更精確地限制了變量的長度是1-20個字符(前面1個字符+後面最多19個字符)。

A|B可以匹配A或B,所以(J|j)ava(S|s)cript可以匹配‘JavaScript‘‘Javascript‘‘javaScript‘或者‘javascript‘

^表示行的開頭,^\d表示必須以數字開頭。

$表示行的結束,\d$表示必須以數字結束。

你可能註意到了,js也可以匹配‘jsp‘,但是加上^js$就變成了整行匹配,就只能匹配‘js‘了。

JavaScript標準對象