解析字符串 使用正则或其他方法

startTime=2015-07-20&endTime=2015-07-20&stService=100&stService=101

请问如何解析这段字符串并返回。
使用函数getParamV("stService")得到["100","101"]数组
使用函数getParamV("endTime")得到["2015-07-20"]数组

阅读 2.4k
1 个回答
javascriptvar str = 'startTime=2015-07-20&endTime=2015-07-20&stService=100&stService=101'

function parserParmeters(str) {
    var parameters = {};
    var keyValues = str.split('&');
    for (var i in keyValues) {
        keyValue = keyValues[i].split('=');
        if (!parameters[keyValue[0]]) {
            parameters[keyValue[0]] = [keyValue[1]];
        } else {
            parameters[keyValue[0]].push(keyValue[1]);
        }
    }

    return parameters;
}

function getParamV(key) {
    return parserParmeters(str)[key];
}

console.log(getParamV('stService'));
console.log(getParamV('endTime'));
推荐问题