function(key){var value=document.location.search.match(new RegExp("(?:^\\?|&)"+key+"=(.*?(?=#/&/$)"));return(value?decodeURI(value[0]:null));}
1 回答
米琪卡哇伊
TA贡献1998条经验 获得超6个赞
你好,这是一个Javascript函数,其作用是从当前页面的地址的参数中提取出指定的参数值。
如:假设一个网页的地址最后是 test.html?aaa=123&bbb=456$ccc=789
在这个页面中调用该函数,当key的值是aaa时,函数返回123;key是bbb时,返回456...
1、
1 | document.location.search |
上面这部分代码提取了前面页面地址中的参数列表,如:?aaa=123&bbb=456$ccc=789
2、
1 | match( new RegExp( "(?:^\\?|&)" +key+ "=(.*?(?=#/&/$)" )); |
match() 是一个字符串的方法,用来匹配相应的字符串
里面的参数是一个正则表达式,可以匹配传入函数的“key”的那段字符串,并提取出key后面的参数值,存在value这个变量中。
3、
1 | return (value?decodeURI(value[0]: null )); |
最后,返回结果。a?b:c是一个条件语句,在这里就是如果匹配到了key的值,就返回其值,否则返回null。
- 1 回答
- 0 关注
- 307 浏览
相关问题推荐
添加回答
举报
0/150
提交
取消