日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

JS腳本獲取URL信息的方法

 行者花雕 2021-09-30

JS獲取URL信息類

主要功能有:

1.獲取URL基本信息,包括:網(wǎng)址,協(xié)議,端口號等。

2.地址欄獲取參數(shù)。

3.將json格式的參數(shù)對象轉(zhuǎn)換成字符串。

 

//獲取URL信息
var shaoURL = shaoURL || {};
(function (n){
    var d = {
        pathname:window.location.pathname,    //設(shè)置或獲取對象指定的文件名或路徑。
        href:window.location.href,    //設(shè)置或獲取整個 URL 為字符串。
        port:window.location.port,    //設(shè)置或獲取與 URL 關(guān)聯(lián)的端口號碼。
        protocol:window.location.protocol.split(":")[0],    //設(shè)置或獲取 URL 的協(xié)議部分。
        host:window.location.host,    //設(shè)置或獲取 location 或 URL 的 hostname 和 port 號碼
        hash:window.location.hash,    //設(shè)置或獲取 href 屬性中在井號“#”后面的分段
        param:window.location.search,    //設(shè)置或獲取 href 屬性中跟在問號后面的部
        referrer:document.referrer    //獲取來源頁地址
    };
    n.get = function(){
        var arrA = [];
        var arrB = [];
        for(var i in d){
            arrA.push(i);
            arrB.push(d[i]);
        };
        return {
            item:arrA,
            key:arrB
        };
    };
    n.getA = function(){
        return d;
    };
    n.getB = function(p){
        return d[n.get().item[p]];
    };
    n.getC = function(key){
        return d[key];
    };
    n.getD = function(key){
        var reg = new RegExp("(^|&)"+ key +"=([^&]*)(&|$)");
        var r = window.location.search.substr(1).match(reg);
        if(r!=null)return unescape(r[2]); return null;
    };
    n.getE = function(){
        var r = window.location.hash;
        if(r!=null) return r.substr(1); return null;
    };
    //json轉(zhuǎn)url字符串
    n.JsonToURL = function(o){
        var str = "";
        for(var key in o){
            if(o[key]!=-1){
                str += key + "=" + encodeURIComponent(o[key]) + "&";
            }
        }
        str = str.substring(0,str.length-1);
        return str;
    };
    //param 將要轉(zhuǎn)為URL參數(shù)字符串的對象
    //key URL參數(shù)字符串的前綴
    //encode true/false 是否進(jìn)行URL編碼,默認(rèn)為true
    //return URL參數(shù)字符串
    //var obj = {name:"tom","class":{className:"class1"},classMates:[{name:"shao"}]};
    //JsonParam(obj);
    n.JsonParam = function(param, key, encode) {
        if(param==null) return '';
            var str = '';
            var t = typeof (param);
            if (t == 'string' || t == 'number' || t == 'boolean') {
            str += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);
        } else {
            for (var i in param) {
                var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);
                str += '&' + n.JsonParam(param[i], k, encode);
            }
        }
        return str.substr(1);
    };
    //json轉(zhuǎn)url字符串
    //param 將要轉(zhuǎn)為URL參數(shù)字符串的對象
    //key URL參數(shù)字符串的前綴
    //return URL參數(shù)字符串
    //var obj = {name:"tom","class":{className:"class1"},classMates:[{name:"shao"}]};
    //parseParam(obj);
    n.parseParam = function(param,key){
        var str = "";
        if(param instanceof String || param instanceof Number|| param instanceof Boolean){
            str += "&" + key + "=" + encodeURIComponent(param);
        } else {
            /*
            for(var i in param){
                var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);
                str += '&' + parseParam(param[i], k);
            }
            */
            $.each(param,function(i){
                var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);
                str += '&' + n.parseParam(this, k);
            });
        };
        return str.substr(1);
    };

})(shaoURL);

初次寫博客,希望大家多多指教。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多