标签:
1 /**************************** 2 * 有这样一个URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e, 3 * 请写一段JS程序提取URL中的各个GET参数(参数名和参数个数不确定), 4 * 将其按key-value形式返回到一个json结构中, 5 * 如{a:‘1‘, b:‘2‘, c:‘‘, d:‘xxx‘, e:undefined}。 6 ****************************/ 7 8 function f2(url) { 9 var json = {}; 10 var regExp = /[\?\&](\w{1,})(=?)(\w{0,})/g; 11 12 do { 13 arr = regExp.exec(url); 14 // console.log(arr); // arr = [完整的字符串, key, 等号或‘‘, value或‘‘] 15 16 if (arr) { 17 // arr[2] === ‘‘时, value = undefined 18 // arr[2] === ‘=‘时, value = arr[3] 19 var key = arr[1]; 20 var value = undefined; 21 22 if (arr[2] === ‘=‘) 23 value = arr[3]; 24 25 json[key] = value; 26 } 27 } while (arr); 28 29 return json; 30 } 31 32 // ======test====== 33 ! function () { 34 var url = ‘http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e‘; 35 console.log(f2(url)); 36 } ();
标签:
原文地址:http://www.cnblogs.com/forzhaokang/p/5203608.html