var value=document.location.search.match(new RegExp("(?:^\\?|&)"+key+"=(.*?(?=#/&/$)"));实际作用?

function(key){varvalue=document.location.search.match(newRegExp("(?:^\\?|&)"+key+"=(.... function(key){
var value=document.location.search.match(new RegExp("(?:^\\?|&)"+key+"=(.*?(?=#/&/$)"));
return(value?decodeURI(value[0]:null));
}
展开
 我来答
海甸岛的骄傲
推荐于2018-03-14 · TA获得超过820个赞
知道小有建树答主
回答量:147
采纳率:100%
帮助的人:134万
展开全部

你好,这是一个Javascript函数,其作用是从当前页面的地址的参数中提取出指定的参数值

如:假设一个网页的地址最后是 test.html?aaa=123&bbb=456$ccc=789

在这个页面中调用该函数,当key的值是aaa时,函数返回123;key是bbb时,返回456...

1、

document.location.search

上面这部分代码提取了前面页面地址中的参数列表,如:?aaa=123&bbb=456$ccc=789

2、

match(new RegExp("(?:^\\?|&)"+key+"=(.*?(?=#/&/$)"));

match() 是一个字符串的方法,用来匹配相应的字符串

里面的参数是一个正则表达式,可以匹配传入函数的“key”的那段字符串,并提取出key后面的参数值,存在value这个变量中。

3、

return(value?decodeURI(value[0]:null));

最后,返回结果。a?b:c是一个条件语句,在这里就是如果匹配到了key的值,就返回其值,否则返回null。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式