JavaScript 的 location 对象是一个非常有用的属性,它用于获取和操作 URL,主要知识点包括获取 URL 各部分(如 href、protocol、hostname 等)以及进行页面跳转和导航(如 assign()、replace() 方法)。
location 对象的属性
href:返回或设置当前文档的完整 URL。protocol:以字符串形式返回 URL 的协议(例如"http:"或"https:")。host:返回 URL 的主机名和端口号(例如"www.example.com:80")。hostname:返回 URL 的主机名(例如"www.example.com")。port:返回 URL 的端口号(例如"80")。pathname:返回 URL 的路径部分(例如"/path/to/document.html")。search:返回 URL 的查询字符串,包括问号(例如"?query=abc")。hash:返回 URL 的片段标识符,包括井号(例如"#section1")。
location 对象的方法
assign(url):加载新的文档。这相当于直接给location.href赋值,但assign()会在浏览器的历史记录中留下一个条目。replace(url):用新的 URL 替换当前文档。这不会在浏览器历史记录中留下条目,用户无法通过后退按钮返回到前一页。reload():重新加载当前文档。可以传入一个布尔值参数,true表示从服务器强制重新加载,否则使用缓存。
location 对象的使用场景
-
获取 URL 信息:
- 获取当前页面的协议和域名,用于身份验证、SEO 等场景。
- 解析 URL 中的参数,用于实现过滤、搜索等功能。
-
页面跳转和导航:
location.href = '...'或location.assign('...')用于页面跳转。location.replace('...')用于跳转并阻止用户返回。location.reload()用于刷新页面
更好的学习链接: blog.csdn.net/moguzhale/a…