我需要从URL创建一个Javascript数组,例如:
转过来:
http://maps.google.com/maps/api/staticmap?center=Baker Street 221b, London&size=450x450&markers=Baker Street 221b, London&sensor=false
Run Code Online (Sandbox Code Playgroud)
变成这样的东西:
array['center'] = Baker Street 221b, London
array['size'] = 450x450
// and so on...
Run Code Online (Sandbox Code Playgroud)
我需要使这个序列化/反序列化双向工作(url到数组和数组到url的部分).是否有一些内置函数可以做到这一点?
提前致谢!
cas*_*nca 47
数组的URL :(改编自我的答案)
function URLToArray(url) {
var request = {};
var pairs = url.substring(url.indexOf('?') + 1).split('&');
for (var i = 0; i < pairs.length; i++) {
if(!pairs[i])
continue;
var pair = pairs[i].split('=');
request[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);
}
return request;
}
Run Code Online (Sandbox Code Playgroud)
数组到URL:
function ArrayToURL(array) {
var pairs = [];
for (var key in array)
if (array.hasOwnProperty(key))
pairs.push(encodeURIComponent(key) + '=' + encodeURIComponent(array[key]));
return pairs.join('&');
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32477 次 |
| 最近记录: |