location对象(浏览器地址)

256 阅读2分钟

一、URL介绍

  • URL(uniform Resource Locator):url是互联网上的标准资源的地址,互联网上的每一个资源都有一个唯一的url,它包含的信息,指出文件的位置以及浏览器该怎么处理它。
  • 例如:www.baidu.com:8080/index/a/ind…
  • URL格式: protocol://host[:port]/path/[?query]#fragment

二、一个完整的URL应该包含哪些内容?

  1. protocol:传输协议。http或者htttps。

作用:前后端交互的方式。

  1. host:网站的域名。www.baidu.com www.360buy.com
  2. port:端口。

可以省略,省略时采用默认端口。http 默认端口是80;mysql数据库是3306。

  1. path: 请求资源的路径。是由0到多个/分隔的字符串。

作用:一般用来表示主机上的一个目录或者文件地址。

  1. 查询字符串。

?a=123&b=123查询字符串(queryString)是以键值对形式存在,每一个键值对之间使用&分隔开。

  1. #XXX 哈希。

作用:锚点定位。

三、location对象

  • 在window对象里有一个location属性,属性值是一个对象,里面存储的就是和网站地址相关的信息

3.1 location对象里的属性

location.href  //当前网址的地址,可读写

获取:location.href //返回的是当前页面的地址。

写入:location.href='新的网址' //跳转页面
location.host //返回主机域名
location.port  //返回端口号,如果未写,则返回空字符串
location.pathname //返回路径
location.search   //*必须掌握 重要*
//获取当前网页地址中的查询字符串  

获取:
    查询到的是一个字符串,访问网页所有带的信息,我们需要将这个字符串解析后才能使用。
可有可没有,如果url地址没有查询字符串window.location.serch获取到的是空字符串。
location.hash  //当前网页的哈希值

3.2 location对象里的方法

location.reload
  • 作用:重新刷新加载页面,相当于按下了浏览器左上角的刷新按钮。
  • 注意:页面刷新语句不要写在一打开页面就可以执行的地方,否则一进来就刷新会造成死循环。页面刷新多和按钮配合使用!
location.assign('新的地址');
//重定向页面,和 href一样,可以实现页面的跳转。
location.replace('新的地址');

//替换当前的页面,因为不记录历史记录,所以不能回退。