window.location对象 获取页面地址

window.location对象的属性:

属性 含义
location.protocol 协议 "http://"或"https://"
location.hostname 服务器名字 "baidu.com"
location.port 端口 "8080"
location.pathname URL中主机名后的部分 "/index.php"
location.search "?"后的部分,又称查询字符串 "?type=2&id=122"
location.hash "#"之后的内容 "#first"
location.host 等于hostname+port "baidu.com:8080"
location.href 当前页面的完整URL "http://baidu.com:8080?type=2&id=50#first"

window.location对象的方法:

方法 描述
location.assign() 加载新的文档
location.reload() 重新加载当前文档
location.replace() 用新的文档替换当前文档

location.href 与location.assign()以及location.replace()的区别:

location.href='http://baidu.com'    ===  location.assign('http://baidu.com')   都是在当前页面跳转到新的页面,在新页面点击返回按钮,可回到上一页。

location.replace('http://baidu.com') 当前页面被新页面替换,不能回到上一页。

如何使用js脚本捕获页面GET方法请求的参数?    比如 "?type=2&id=50" 里的2和50。

1 var dataList=window.location.search;  //使用location.search获取?type=2&id=50字符串。
2 var dataArray=dataList.split("&");    //用"&"将字符串进行分割,返回到数组中。得到{?type=2,id=50}
3 var type=dataArray[0].split("=")[1];  //用"="将数组中的"?type=2"分割为数组{?type,2},并取index=1的字符串2。
4 var id=dataArray[1].split("=")[1];    //同上
5 console.log(type,id); //2  50

补充:字符串的split()方法

split(separator,howmany);   

separator:必需,字符串或正则表达式。从该参数指定地方分割。被分割的字符返回到数组中,且不包含separator本身。

howmany:可选,指定返回数组的最大长度。

猜你喜欢

转载自www.cnblogs.com/zhuqs/p/9238711.html