ake87 发表于 2013-2-7 18:48:12

简单的url/location对象读取类

一般情况下,我们需要读取url参数或者hash值之类,都是通过location对象来取得的。
那为什么大家都用正则表达式去匹配呢?
会不会有舍近取远的嫌疑?
 
要充分利用原有的资源!
 
function KLocation(url){    var uri = url ? url : window.location;    if(typeof uri !== "object") throw "NOT URL OBJECT";    var obj= {};    for(var property in uri){        obj = uri;    }    function splitQuery(str){        var temp = {};        if(str && str.length > 1){            var args = str.substring(1).split("&");            for(var i=0,len=args.length;i<len;i++){                temp.split("=")] = decodeURI(args.split("="));          }        }        return temp;    }    obj.hash = splitQuery(obj.hash);    obj.search = splitQuery(obj.search)    return obj;}//href="test.html?a=test#b=1&c=2"//var t = KLocation();//alert(t.hash.b);//alert(t.search.a);貌似代码有问题,被截断了。
 
PS:貌似代码方式不会截断代码,可视化编辑器去编辑的话会把内部函数截断了。。
页: [1]
查看完整版本: 简单的url/location对象读取类