如何在JavaScript中解析没有基本URL的相对URL

时间:2019-05-09 14:59:26

标签: javascript

对于绝对URL,我们可以使用new URL(str)进行解析;对于具有基本URL的相对URL,我们可以使用new URL(path, base)。如何解析没有基本URL的相对URL?例如,folder/file.ext?a=1&b=2#hash应该解析为

{
    pathname: "folder/file.ext",
    search: "?a=1&b=2",
    hash: "#hash"
}

第三方库很好,但是我更喜欢内置库和函数。首选跨平台(browser / Node.js)解决方案。不需要IE。

1 个答案:

答案 0 :(得分:1)

如果您知道相对URL的参数大致是什么样,则意味着您的标识符为“?”和'#'是唯一的,您可以使用基本的JS并拆分相对的URL字符串,然后将自己的JSON-Object与从中获得的数据缝合在一起。