1. 程式人生 > >用JS解決url地址中參數亂碼的問題

用JS解決url地址中參數亂碼的問題

url dex var match document type char mat value

var url = window.location.herf;//獲取url地址
var obj = {};    //最後輸出的對象
var reg = /\?/;   //要匹配的正則表達式
if(url.match(reg)) {
    var chars = url.split(‘?‘)[1];//獲取參數
    var char = chars.split(‘&‘); //獲取鍵值對
    for(var i=0;i<char.length;i++) {
        var index = char[i].indexOf(‘=‘);
        if(index>0) {//是否含有=
            
var name = char[i].slice(0,index); var value = char[i].slice(index+1); obj[decodeURIComponent(name)] = decodeURIComponent(value);
//decodeURIComponent() 函數可對 encodeURIComponent() 函數編碼的 URI 進行解碼。
//示例

<script type="text/javascript">

var test1="http://www.w3school.com.cn/My first/"

document.write(encodeURIComponent(test1)
+ "<br />") document.write(decodeURIComponent(test1)) </script>

//輸出
http%3A%2F%2Fwww.w3school.com.cn%2FMy%20first%2F
http://www.w3school.com.cn/My first/

} } } console.log(obj)

用JS解決url地址中參數亂碼的問題