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、代码注释明确
2 回答
杨__羊羊
TA贡献1943条经验 获得超7个赞
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;
//+++++++++++答题结束+++++++++++
}
写的不是很好
添加回答
举报
0/150
提交
取消