用javascript將URL 解析成對象的形式

將url解析爲對象的形式有兩種方案
1.利用數組的spilt()函數
類似於下面將URL後邊的參數保存在args對象中

function parseQuery(query){
    var args = {};
    var items = query.split("&");

    var item = null, name = null, value = null;
    for(var i=0; i < items.length; i++){
        item = items[i].split("=");
        if(item[0]){
            name = item[0];
            value = item[1] ? item[1] : "";
            args[name] = value;
        }
    }
    return args;
}

2.第二種是使用正則表達式解析

function parseQueryString(str) {
    var reg = /(([^?&=]+)(?:=([^?&=]*))*)/g;
    var result = {};
    var match;
    var key;
    var value;
    while (match = reg.exec(str)) {
        key = match[2];
        value = match[3] || '';
        result[key] = decodeURIComponent(value);
    }
    return result;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章