【www.bbyears.com--js教程】
我记得用JS将Url参数转换为数组的方法我以前写过的,结果昨天去面试,也有这个面试题目,然后不知道脑袋突然就不好使了,当时竟然没有分分钟写出来,感觉已无颜面对父老乡亲,现在再重写一遍,当时笔记吧,
代码如下:
www.111cn.net
function getParam(url="")
{
if(url="")
{
var url = window.location.href;
}
var index = url.indexOf("?") //获取?字符位置
url = url.substr(index+1); //截取url参数部分
var arr = new Array();
arr = url.split("&"); //将各参数分离
var str = "[{";
//将参数数组部分转换为JSON数据
for(var i=0;i
{
var index1 = arr[i].indexOf("=");
//判断最后一个参数是否有值
if(index1 == -1)
{
str+=",""+arr[i]+"":""";
continue;
}
var key = arr[i].substr(0,index1);
var val = arr[i].substr(index1+1);
var str1= ",";
if(i==0)
{
str1 = "";
}
str+=str1+"\""+key+"\":"+"\""+val+"\"";
}
return str+"}]";
}
很简单的代码,一看就明白,如果不传入参数,则默认获取当前页面的URL参数转为JSON数据,如果传入URL,则将传入URL的参数部分转为JSOM数据。
这代码一看就懂,更不用说用到什么高深的知识了,纯粹只是JS数组,字符串,JSON相互转换、处理的一些最基本的函数;别人面试官看的也都是一些基本功