在ES6中解析URL的最佳方法

Ale*_*ets -4 javascript url npm ecmascript-6

我已经看到了有关该主题的一些传奇性问题:如何解析url

但是岁月流逝,情况发生了变化。我能找到的问题的答案已经过时了。我不想通过正则表达式或某些黑客(例如将HTML节点创建为解析助手)来解析URL。我想要一些灵活的方法来从URL返回带有所有必需数据的对象。我相信,有一些新的内置方法可以执行此操作,或者有一些新的革命性惊人方法和用于此目的的简单ES6库。

你能给我这样的建议吗?

Bla*_*ard 6

我认为您正在寻找这样的Web API URL() constructor

const myTestURLString = "https://www.youtube.com:8080/watch?v=YaXXXXkt0Y&id=123";

const myURLObj = new URL(myTestURLString );

console.log(myURLObj.protocol);
console.log(myURLObj.host);
console.log(myURLObj.hostname);
console.log(myURLObj.pathname);
console.log(myURLObj.search);
console.log(myURLObj.searchParams.get('v'));
console.log(myURLObj.searchParams.get('id'));
Run Code Online (Sandbox Code Playgroud)