js獲取url參數值的幾種方式詳解

目錄 方法一: 調用方法 方法二: 調用方法 補充URL知識 方法一: 采用正則表達式獲取地址欄參數 (代碼簡潔,重點正則) function getQueryString(name) { let reg = new RegExp("(^|)" + name + "=([^]*)
目錄
  • 方法一:
    • 調用方法
  • 方法二:
    • 調用方法
  • 補充URL知識

    方法一:

    采用正則表達式獲取地址欄參數 (代碼簡潔,重點正則)

    function getQueryString(name) {
        let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
        let r = window.location.search.substr(1).match(reg);
        if (r != null) {
            return unescape(r[2]);
        };
        return null;
     }

    調用方法

    let 參數1 = GetQueryString("參數名1"));

    方法二:

    split拆分法 (代碼較復雜,較易理解)

    function GetRequest() {
       const url = location.search; //獲取url中"?"符后的字串
       let theRequest = new Object();
       if (url.indexOf("?") != -1) {
          let str = url.substr(1);
          strs = str.split("&");
          for(let i = 0; i < strs.length; i ++) {
             theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
          }
       }
       return theRequest;
    }

    調用方法

    let Request = new Object();
    Request = GetRequest();
    var 參數1,參數2 ...;
    參數1 = Request['參數1'];
    參數2 = Request['參數2'];
    參數... = Request['參數...'];
    方法三:split拆分法(易于理解,代碼中規)

    function getQueryVariable(variable){
           let query = window.location.search.substring(1);
           let vars = query.split("&");
           for (let i=0;i<vars.length;i++) {
                   let pair = vars[i].split("=");
                   if(pair[0] == variable){return pair[1];}
           }
           return(false);
    }

    調用方法

    let 參數1 = getQueryVariable("參數名1");

    補充URL知識

    示例url =https://www.jb51.net/list/list_3_1.htm

    1、window.location.href(設置或獲取整個 URL 為字符串)
    console.log(window.location.href)

    打印結果:http://www.jianshu.com/search?q=123&page=1&type=note

    2、window.location.protocol(設置或獲取 URL 的協議部分)
    console.log(window.location.protocol)

    打印結果:http:

    3、window.location.host(設置或獲取 URL 的主機部分)
    console.log(window.location.host)

    打印結果:www.jianshu.com

    4、window.location.port(設置或獲取與 URL 關聯的端口號碼)
    console.log(window.location.port)

    打印結果:空字符(如果采用默認的80端口(update:即使添加了:80),那么返回值并不是默認的80而是空字符)

    5、window.location.pathname(設置或獲取與 URL 的路徑部分(就是文件地址))
    console.log(window.location.pathname)

    打印結果:/search

    6、window.location.search(設置或獲取 href 屬性中跟在問號后面的部分)
    console.log(window.location.search)

    打印結果:?q=123&page=1&type=note

    PS:獲得查詢(參數)部分,除了給動態語言賦值以外,我們同樣可以給靜態頁面,并使用javascript來獲得相信應的參數值。

    7、window.location.hash(設置或獲取 href 屬性中在井號“#”后面的分段)
    console.log(window.location.hash)

    打印結果:空字符(因為url中沒有)

    以上就是js獲取url參數值的幾種方式詳解的詳細內容,更多關于js獲取url參數值的資料請關注技圈網其它相關文章!

    聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
    發表評論
    更多 網友評論0 條評論)
    暫無評論

    返回頂部

    主站蜘蛛池模板: 久久久久久久综合色一本| 国产v亚洲v天堂a无| 亚洲欧美日韩另类在线一| julia无码人妻中文字幕在线| 里漫社扶她全彩口工漫画| 晚上看b站直播软件| 浮力影院欧美三级日本三级| 少妇精品久久久一区二区三区| 国产乱人伦AV麻豆网| 久久精品国产亚洲AV无码偷窥| 91频在线观看免费大全| 美国一级毛片完整高清| 成年女人免费播放影院| 向日葵app在线观看下载大全视频| 久久99国产综合色| 自拍偷自拍亚洲精品被多人伦好爽| 新梅金瓶之爱奴1国语在线观看| 国产一区二区精品久久91| 丰满饥渴老女人hd| 绿巨人晚上彻底放飞自己| 岳双腿间已经湿成一片视频| 免费看黄视频app| jlzzjlzz亚洲乱熟在线播放| 男女一进一出猛进式抽搐视频 | 全彩无修本子里番acg| yellow视频免费看| 男人插曲女人下面| 在线人成精品免费视频| 亚洲日韩一页精品发布| 2018天天干夜夜操| 日韩视频免费一区二区三区| 国产午夜成人AV在线播放| 久久99青青精品免费观看| 精精国产XXXX视频在线| 女人张开腿给男人桶爽免费| 人人干人人干人人干| 337p色噜噜| 日韩第一页在线| 噜噜噜狠狠夜夜躁| flstingextreme头交| 波多野结衣教师系列5|