JavaScript实现url参数转成json形式
朋友问的一个面试题:有个url,要求获取url的参数,返回值为json格式。
简单的写了下,发笔记备份。
<!DOCTYPEhtml> <html> <head> <metacharset="utf-8"> <title>simpleaexampleforurltojson</title> <script> varurl='https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=0&rsv_idx=1&tn=baidu&wd=慕课&rsv_pq=e379bd8200001a8c&rsv_t=ea8cxrgm03IFb44zHA261P6KziPRXAekcjwsRJtUSKLUmKweFsZFXE%2BUSrU&rqlang=cn&rsv_enter=0&rs'; functionurl2json(url){ varindex=-1, str='', arr=[], length=0, res={}; if(url.indexOf('?')!=-1){ index=url.indexOf('?'); str=url.substring(index+1); arr=str.split('&'); length=arr.length; for(vari=0;i<length-1;i++){ res[arr[i].split('=')[0]]=arr[i].split('=')[1]; } }else{ res={}; } returnres; }; varresult=url2json(url); //获取json的键值对条数(模拟长度) varlength=0; for(variinresult){ length++; } //在页面输出 vartL=0; document.write('{<br>'); for(varnameinresult){ tL++; if(tL==length){ document.write('  '+name+':'+result[name]+'<br>'); }else{ document.write('  '+name+':'+result[name]+',<br>'); } } document.write('}'); </script> </head> <body>