zoukankan      html  css  js  c++  java
  • JS解析url

    使用js解析url ,返回一个对象,使用函数:

    <script type="text/javascript">
    var url="www.taobao.com?key0=a&key1=b&key2=c";
    function parseQueryString(url){
        var str=url.split("?")[1],
        items=str.split("&");
        var arr,name,value;
        for(var i = 0, l = items.length; i < l; i++){
            arr=items[i].split("=");
            name= arr[0];
            value= arr[1];
            this[name]=value;
        }
    }
    var obj=new parseQueryString(url);
    alert(obj.key1)
    </script>

    改成函数直接量:

    <script type="text/javascript"> 
    var url="www.taobao.com?key0=a&key1=b&key2=c"; 
    var pQString={ 
        createNew:function(url){ 
            var str=url.split("?")[1], 
            items=str.split("&"); 
            var arr,name,value; 
            for(var i = 0, l = items.length; i < l; i++){ 
                arr=items[i].split("="); 
                name= arr[0]; 
                value= arr[1]; 
                this[name]=value; 
            }
        }
    }
    var obj=new pQString.createNew(url); 
    alert(obj.key1) 
    </script>

    改成更高效的形式:

    <script type="text/javascript"> 
    function getQueryString(url) { 
        if(url) { 
            url=url.substr(url.indexOf("?")+1); //字符串截取,比我之前的split()方法效率高 
        } 
        var result = {}, //创建一个对象,用于存name,和value 
        queryString =url || location.search.substring(1), //location.search设置或返回从问号 (?) 开始的 URL(查询部分)。 
        re = /([^&=]+)=([^&]*)/g, //正则,具体不会用 
        m; 
        while (m = re.exec(queryString)) { //exec()正则表达式的匹配,具体不会用 
            result[decodeURIComponent(m[1])] = decodeURIComponent(m[2]); //使用 decodeURIComponent() 对编码后的 URI 进行解码 
        } 
        return result; 
    } 
    // demo 
    var myParam = getQueryString("www.taobao.com?key0=a&key1=b&key2=c"); 
    alert(myParam.key1); 
    </script> 
  • 相关阅读:
    JavaScript 内置函数有什么?
    cursor(鼠标手型)属性
    用CSS制作箭头的方法
    CSS 的伪元素是什么?
    用CSS创建分页的实例
    CSS 按钮
    网页布局中高度塌陷的解决方法
    CSS 进度条
    DOM导航与DOM事件
    DOM 修改与DOM元素
  • 原文地址:https://www.cnblogs.com/lswit/p/4695939.html
Copyright © 2011-2022 走看看