Useful code snippet to parse the key value pairs in URL

91 阅读1分钟

This issue is written based on review result of CECenter code.
下面这段代码的目的是从A=a&B=b&C=c&D=d中解析出key A,B,C,D和value a,b,c,d:

clipboard1

虽然只有4行,但是后面两行每行至少包含substring和indexOf两个字符串操作。
可以通过下面代码里的正则表达式高效地实现这个功能:

var test = "#token=Be&access_token=fff&id_token=ets&expires_in=3600&scope=full";
var anotherTry = function(value) {
var reg = /(?:^\#|&)(.*?)=(.*?)(?=&|$)/g;
var temp;
while((temp = reg.exec(value))!= null) {
console.log("Key: " + temp[1] + " value: " + temp[2]);
}
};
anotherTry(test);

输出:

clipboard2

要获取更多Jerry的原创文章,请关注公众号"汪子熙":