通用代码 js获取URL参数
来源:互联网 发布:ios阴阳师网络连接错误 编辑:程序博客网 时间:2024/05/18 14:45
URL参数格式
http://localhos:8080/demo?a=b&c=d&e=f
匹配参数a
对应的表达式为 ^a=([^&]*)&
匹配参数b
对应的表达式为&b=([^&]*)&
匹配参数c
对应的表达式为&c=([^&]*)$
http://localhos:8080/demo?h=i
匹配参数h
对应的表达式为^h=([^&]*)$
请思考: 为什么[^&]*
要使用()
包裹?
代码
function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); // 获取url中"?"符后的字符串并正则匹配 var context = ""; if(r != null) context = r[2]; reg = null; r = null; return context == null || context == "" || context == "undefined" ? "" : context;}
说明
window.location中的属性如下图(1)所示
href:请求URL
search:请求URL中请求参数的部分(含有?,在对此部分内容进行解析时,需要注意问号)
getQueryString(name)
中形参name的值
是我们要从URL中获取的参数名
window.location.search.substr(1)
是截取?
后面的内容进行匹配
"(^|&)" + name + "=([^&]*)(&|$)"
(^|&)
表示 匹配字符串的起始位置或&字符
name
表示匹配name的值
=([^&]*)(&|$)
表示匹配 等号+零到多个非&的字符+&字符或字符串结束位置
从图(2)中可看出下标为2的元素就是我们希望获取的参数值,若对match()返回数组中各元素所代表的含义不理解的可查看 javascript match()函数匹配正则表达式时的返回值问题
参考资料
js中window.location.search的用法和作用
正则表达式语法
javascript match()函数匹配正则表达式时的返回值问题
读懂正则表达式就这么简单
看完了内容,前面提到的思考问题现在明白了吗?
阅读全文
0 0
- 通用代码 js获取URL参数
- js获取URL参数代码
- javascript[js]获取url参数的代码
- javascript[js]获取url参数的代码
- javascript[js]获取url参数的代码
- JS获取URL地址参数代码
- js获取url参数
- JS获取URL参数
- JS获取URL参数
- js获取url参数
- js获取url参数
- js获取url参数
- js获取url参数
- js获取url参数
- JS获取URL参数
- js获取url参数
- JS获取URL参数
- JS获取URL参数
- 将博客搬至博客园
- layer 提示层问题 按钮提示默认执行
- [日推荐]『51好书推荐』专治假期综合症~
- spring-boot redis配置
- C++ 模板详解(一)
- 通用代码 js获取URL参数
- C&C服务器
- leetcode 41 First Missing Positive
- 安装win32com
- 关于Eclipse中“ctrl+鼠标左击类”快捷键不能查看该类API源代码的解决方法
- redis info 命令查看redis使用情况
- oracle数据库常用函数:replace translate函数使用
- oracle sql
- 结构体在内存中的对齐规则