location (地址): 是瀏覽器 window 上的一個對象,不僅能處理當前頁面的網絡地址,還可以實現頁面間的跳轉
頁面的跳轉:
為什么使用它?
使我們也可以通過腳本語言,也能實現 a 鏈接,同樣的效果,location對象 為我們提供了三種方法
location.href="網址"; // 我們熟知且常用的一個方法? ?, window 可以省略不寫
loction.assign("網址");
location.replace("網址");
這三種方式都可以實現頁面的跳轉,但還是有一些細微的區別
本質上:href 是屬性,而 assign() 和 replace() 都是方法
功能上:href 及 assign() 即使跳到新頁面,也可以返回到上一頁,而 replace() 方法則不可以
地址的解析:
為什么要使用它?
location 上面提供了對網絡地址極其詳細的解析,我們可以在這個對象上拿到我們網址的任何信息
怎么使用?
案例:http://127.0.0.1:5500/7.20/02.html?number=10#123 拿這個網址來說道說道 location 的強大之處
location.hash:返回一個 url 錨的部分
console.log(location.hash) // #123 提取 #及后面的內容?
location.search:get 方式傳遞的參數
console.log(location.search) // ?number=10 提取的內容 ? 及后面的內容,到 # 截止
location.hostname:域名
console.log(location.hostname) // 127.0.0.1?
location.pathname:路徑
console.log(location.pathname) //? ?/7.20/02.html? 該文件所在的目錄
location.port:端口
console.log(location.port) // 5500?
location.protocol:http協議 (http協議有兩種:一種 http 另一種是 https )
console.log(location.protocol) // http:
怎么樣:通過上面的案例,我們是不是就能看到 location 的神奇之處了,將我們的網絡地址解析的非常透徹了,但是返回的數據類型是一個字符串
所以,我們要想得到真正的數據,還是要經過數據處理的過程
刷新頁面
history 歷史記錄的對象,也是 window 上面的一個屬性
history.go(0)? // 0 代表刷新頁面 -1 代表返回上一頁 1 代表返回下一頁