獲取url鏈接上的參數值的函數


function getUrlParam(name){
    var reg     = new RegExp('(^|&)' + name + '=([^&]*)(&|$)');
    var result  = window.location.search.substr(1).match(reg);
    return result ? decodeURIComponent(result[2]) : null;
}

其中window.location.search為獲取鏈接參數的方法,之前一直使用window.location.href然后使用split方法拆分。才發現window.location.search.substr(1)好像更方便。
substr() 方法可在字符串中抽取從 start 下標開始的指定數目的字符,substr(1)表示的就是截取?號,獲取?之后的內容。然后用match() 檢索正則表達式的匹配。

其中正則var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)'); "(^|&)" 這個匹配開頭或&字符,整體表示尋找&+url參數名=值+&的格式,&可以不存在。這樣result的內容就是檢索到的匹配的內容,然后return時判斷是否為空,如果不為空則result[2]在這里表示參數后的值,即返回參數值,如果為空的話就返回null。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM