您的位置:首页 > Web前端 > JavaScript

[Javascript Practice] Url解析成Json格式

2015-11-30 16:50 435 查看

(1) split分解

obj[variable[i].split(“=”)[0]]=variable[i].split(“=”)[1];

<script type="text/javascript">
function urljson(url){
var variable=url.split("?")[1].split("&");
//["name=krystal", "id=88", "age=18", "school=hkbu"]
var obj={};
for (var i = 0; i < variable.length; i++) {
obj[variable[i].split("=")[0]]=variable[i].split("=")[1];
}
return obj;
}

var url="http://www.jessica.php?name=krystal&id=88&age=18&school=hkbu";
console.log(urljson(url));
</script>


Result:



(2) 正则

var pattern=/\??(\w+)=(\w+)\&?/g;

一定要使用globle /g 如果不使用的话, 会只匹配第一个找到得, 后面的都不管了

replace()

<script type="text/javascript">
function urljson(url){
/*****/
var pattern=/\??(\w+)=(\w+)\&?/g;
/*****/
var obj={};

/*
$0: match整个字符串
$1: match第一个括号内容
$2: march第二个括号内容......
*/
url.replace(pattern,function($0,$1,$2){
return obj[$1]=$2;
});
return obj;
}

var url="http://www.jessica.php?name=krystal&id=88&age=18&school=hkbu";
console.log(urljson(url));
</script>


Result:



Test $

url.replace(pattern,function($0,$1,$2){
// test
console.log($0);
console.log($1);
console.log($2);
});


Result:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript