簡體   English   中英

如何在 javascript 中將 URL 解析為主機名和路徑

[英]How do I parse a URL into hostname and path in javascript

如何從以下 URL 獲取路徑名?

file:///index.html/temp/data

我知道/temp/data是路徑名。

window.location.pathname給了我index.html/temp/data

不幸的是,如果您的 url 是 file:///index.html/temp/data,那么路徑名將是 file:// 之后的所有內容,因此在您的情況下,它應該返回 /index.html/temp/data。

我認為沒有內置的解決方案來處理這個問題。

要解決上述問題,您可以嘗試執行

window.location.pathname.split('.html/')[1]

您可以使用RegExp.match來獲取所需的路徑

 let [path] = 'index.html/temp/data'.match(/(\\/\\w*)+/); console.log(path) let [path2] = 'index.htm/temp/data'.match(/(\\/\\w*)+/); console.log(path2)

嘗試這個:

console.log (new URL("file:///index.html/temp/data")).

這將記錄一個具有各種屬性的對象,例如我認為是您要查找的hostnamepathname

希望能幫助到你!

如果這是您加載的頁面,您應該能夠使用location.pathname為您提供路徑。

否則,如果這只是一個字符串,你有string.split('/')[3]但你應該做一些驗證以確保它總是在第 4 個 '/' 之后

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM