function urlParser(s){
//+++++++++++答题区域+++++++++++
//+++++++++++答题结束+++++++++++
}
try{
var url1 = "http://www.abc.com/m/s/#page/2/?type=latest_videos&page_size=20";
var url2 = "http://www.abc.com/m/s/#type=latest_videos&page_size=20";
var url3 = "http://www.abc.com/m/s/#page?type=latest_videos&page_size=20";
console.group();
console.info( urlParser(url1) );
console.info( urlParser(url2) );
console.info( urlParser(url3) );
console.groupEnd();
/*------[执行结果]------
["page", "2", { "type": "latest_videos", "page_size": 20 }]
[{ "type": "latest_videos", "page_size": 20 }]
["page", { "type": "latest_videos", "page_size": 20 }]
------------------*/
}catch(e){
console.error("执行出错,错误信息: " + e);
}
要求:
1、只能在指定的位置填写自己的代码,本文件里的其他代码不能修改
2、所有题目都不允许添加全局变量名
3、本文件应该能在firebug的console里正常执行,并输出结果
4、代码最优化,效率最高
5、代码注释明确
function urlParser(s){
//+++++++++++答题区域+++++++++++
var str=s.split("#")[1];//取到#以后的内容
var jsonStr="";//定义一字符串
if(str.indexOf("?")!=-1){//判断是否有?如果有则前面的内容
var textStr=str.split("?");//取到?前面的内容
if(textStr[0].indexOf("/")!=-1){//判断是否有/
for(var i=0;i<textStr[0].split("/").length-1;i++){
jsonStr+="'"+textStr[0].split("/")[i]+"',";//取到/之间的内容
}
}else{
jsonStr+="'"+textStr[0]+"',";//如果没有/则直接取内容
}
jsonStr="["+jsonStr+"{'type':'"+textStr[1].split("&")[0].split("=")[1]+"','page_size':'"+textStr[1].split("&")[1].split("=")[1]+"'}]";//拼接字符串
}else{//判断是否有?如果没有则取#后面的内容
jsonStr="[{'type':'"+str.split("&")[0].split("=")[1]+"','page_size:'"+str.split("&")[1].split("=")[1]+"'}]";//拼接字符串
}
return jsonStr;
//+++++++++++答题结束+++++++++++
}
写的不是很好
参考下 jquery BBQ等类似的组件。