window.location:
1.window.location:
window的location对象
2.window.location.href
整个URl字符串(在浏览器中就是完整的地址栏)
3.window.location.protocol
URL 的协议部分
返回值:http:
4.window.location.host
URL 的主机部分(带端口号)
5.window.location.port
URL 的端口部分。
5.window.location.pathname
URL 的路径部分(就是文件地址)
6.window.location.search
查询(参数)部分。得到的是url中?部分。除了给动态语言赋值以外,我们同样可以给静态页面,并使用javascript来获得相信应的参数值。
7.window.location.hash
锚点。得到的是url中#部分。
substr()
返回一个从指定位置开始的指定长度的子字符串
这里设置为1,是为了把url中的?号去掉
function getQueryString(name) {
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) {
return unescape(r[2]);
}
return null;
}
1
2
3
4
5
6
7
8
9
1、reg是一个正则表达式子,是你获得的参数
image.png
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|) " ) ; ( ∣ ) 代 表 开 始 ( ∣ )"); (^| )代表开始 ( |)")😭
∣
)代表开始(∣)代表结束
以&或者$结尾的字符串
这个正则是寻找&+url参数名字=值+&
&可以不存在。
window.location.search.substr(1).match(reg);
(1) location是包含了相关的url的信息,它是windown的一部分。
(2) search是一个可以查询的属性,可以查询?之后的部分。
(3) substr(1)是为了去掉第一个?
(4) match()是你要匹配的部分 后面可以是正则表达式。
(5) return unescpe(r[2]) 返回的值 一个数组。
(6) 这里是开始匹配,找到了返回对应url值,没找到返回null。
作者:被水遗忘の鱼,终究还是活不成,自己喜欢的样子。