判断地址栏传的参数 截取地址栏参数
//name为要截取的参数
function getQueryString(name) {
//获取整个URL字符串,即完整的地址栏
var dzurl = window.location.href;
//执行全局匹配,查找所有匹配以"&name="开头或者"name="开头,中间为任意多个除了'&'以外的字符;
//一旦遇到 '&' 或者 '' 就中止取值
var pattern = new RegExp("[?&]" + name + "\=([^&]+)", "g");
var matcher = pattern.exec(dzurl);
var items = null;
if(null != matcher) {
try {
items = decodeURIComponent(decodeURIComponent(matcher[1]));
} catch(e) {
try {
items = decodeURIComponent(matcher[1]);
} catch(e) {
items = matcher[1];
}
}
};
return items;
};
window.location.href
- window.location.href: 获取整个URL字符串,即完整的地址栏(如https://blog.csdn.net/weixin_44249754/article/details/104456861)
- window.location.protocol:返回URL 的协议部分( 如 https:)
- window.location.host:返回URL 的主机部分(如 blog.csdn.net)
- window.location.port:返回URL 的端口部分,如果采用默认的80端口那么返回值并不是默认的80而是空字符
- window.location.pathname:返回URL 的路径部分,也就是就是文件地址,(如:/weixin_44249754/article/details/104456861)
- window.location.search:返回查询(参数)部分,使用javascript来获得相信应的参数值(如ver=1.0&id=6)
- window.location.hash: 锚点,返回如:#imhere <src=“http://feeds.feedburner.com/~s/fisker?i=http://www.x2y2.com/fisker/post/0703/window.location.html” type=“text/javascript” charset=“utf-8”>
new RegExp(pattern, attributes);
- RegExp 对象表示正则表达式,对字符串执行模式匹配。
- 参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。
- 参数 attributes 是一个可选的字符串,包含属性 “g”、“i” 和 “m”,分别用于指定全局匹配、区分大小写的匹配和多行匹配。
exec() 方法
- exec() 方法用于检索字符串中的正则表达式的匹配。
- 它的返回值是一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。
try/catch/finally 语句
- try…catch语句标记要尝试的语句块,并指定一个出现异常时抛出的响应。
- try { tryCode - 尝试执行代码块 }
- catch(err) { catchCode - 捕获错误的代码块 }
- finally { finallyCode - 无论 try / catch 结果如何都会执行的代码块 }
decodeURIComponent()
encodeURIComponent()
- encodeURIComponent(URIstring)
- 此函数可把字符串作为 URI 组件进行编码。
- 参数URIstring为一个字符串,含有 URI 组件或其他要编码的文本。
- 返回值URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。
- decodeURIComponent(URIstring)
- 此函数可对 encodeURIComponent() 函数编码的 URI 进行解码。
- 参数URIstring为一个字符串,含有编码 URI 组件或其他要解码的文本。
- 返回值为URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换。
来源:CSDN
作者:wode路
链接:https://blog.csdn.net/weixin_44249754/article/details/104608345