1. 程式人生 > >web學習記錄-JS-9

web學習記錄-JS-9

正則表示式 

用於定義一些字串的規則,計算機可以用來檢查一個字串是否符合規則;將字串中符合規則的內容提取出來;

建立正則表示式的物件  var 變數 = new RegExp(“正則表示式”,“匹配模式”);使用typeof檢查會返回object;

方法  test();符合返回true;反之則返回false;  

var result = str.reg(“a”)

可傳遞一個匹配模式作為第二個引數;I ,忽略大小寫;g,全域性匹配模式;

使用字面量建立正則表示式;  var 變數 = /正則表示式/匹配模式;

建立一個正則表示式,檢查字串有a或b   var reg = /a|b/;  var reg = /[ab]/;   var reg = /[a-z]/,任意的小寫字母; [A-Z], 任意大寫字母;[A-z],任意字母;

檢查一個字串是否含有abc aec afc   reg=/a[bdc]c/

[^  ]除了中括號的內容;

split()  將字串拆分為陣列;不設定全域性也會全拆;

根據任意字元將字串拆分  方法中可傳遞一個正則表示式作為引數;  str.split(/[A-z]/);

search()  可以搜尋字串是否含有自定內容;即時設定全域性匹配,也只會查詢第一個;

        有則返回第一次出現索引,沒有則返回-1,可接受正則表示式作為引數,去檢索字串;  srt.seach(/a[bef]b/);

match()  可根據正則表示式,從字串中將符合條件的內容提取出來; str.match(/[A-z]/);

       預設只找到第一個符合要求就停止,可設定為全域性匹配模式,則會匹配所有符合條件的內容,可為一個正則表示式設定多個匹配模式;

      會將匹配到的內容封裝到一個數組中返回,即時只有一個結果;

replace()可將字串中的指定內容替換為新內容;需兩個引數,1,被替換的內容,2,新的內容;

      預設只會替換第一個;  str.replace(/[a-z]/ig,“”)可設正則表示式為全域性變數;

量詞  可以設定一個內容的次數; var reg = /a{次數}/;只對前面的一個內容起作用;可以小括號圈起內容;

    reg = /b{1,3}/;出現1-3次都可以;

    reg = /b{1,}/;出現1次以上;  +,相當於{1,}至少一個;*,相當於{0,}有沒有都行;?,相當於{0,1}沒有或只有1個;

    reg = /^a/;表示開頭;  reg=/a$/;表示結尾;如果同時使用,表示表示式得完全符合正則表示式;

    var  reg= /./;  . 表示任意字元;用\.表示字元.  ;  用\\表示\符號;

    注意: 使用建構函式時,由於引數是一個字串,而\是字串中的轉義字元,如果使用\則用\\來代替;

    \w  任意字母,數字,_

    \W  除了字母,數字,_  

    \d  任意數字;

    \D  除了任意數字;

    \s  空格;

    \S  除了空格;

    \b  單詞邊界;

    \B  除了單詞邊界;

    str = str.replace(/^\s*|\s$/g,"");//去除開頭結尾的空格;

電子郵箱的正則表示式  

  任意字母數字下劃線   .任意字母下劃線@任意字母數字.任意字母(2-5位).任意字母(2-5位)

      ^\w{3,}(\.\w+)*@[A-z0-9]+(\.[A-z]{2,5}){1,2}$  

 

DOM  Document Object Model  文件物件模型。

節點  文件節點  #document  9    null

    元素節點  標籤名    1    null

    屬性節點  屬性名    2    null

    文字節點  #text     3    文字內容

  瀏覽器的已經為我們天宮文件節點物件,這個物件是window屬性可以在網頁直接使用,文件節點代表的是整個網頁

  <button id="btn">我是一個按鈕</button>

  獲取button物件

  var  btn = document.getElementById("btn");

  修改按鈕的文字

  btn.innerHTML = "修改內容”;

事件  使用者與瀏覽器的互動行為,點選,滑鼠移動,關閉視窗等;

    我們可以在事件對應的屬性中設定一些JS程式碼;事件觸發時,執行JS程式碼;(不推薦)

    可以為按鈕的對應事件繫結處理函式的形式來相應事件;

      獲取按鈕物件  var btn = document.getElementById("btn");

      繫結一個單擊事件  btn.onclick = function(){ alert("點選按鈕後"); };

文件的載入

  瀏覽器載入一個頁面時,按照自上向下的順序載入的,讀取一行執行一行,如果寫到script標籤寫到頁面上邊,在程式碼執行時,頁面還沒有載入;

  onload事件會在整個頁面載入完成之後才觸發,繫結在window.onload = function(){  };會在頁面載入完成後執行,可以確保程式碼執行時DOM物件已經載入完畢;

方法

獲取元素節點  通過document物件呼叫;

  1,getElementById() 通過ID屬性獲取一個元素節點物件;

  2,getElementsByTagName()通過標籤名獲取一組元素節點物件;

  3,getElementsByName() 通過name屬性獲取一組元素節點物件;