我已经看到一些有关该主题的传奇问题,例如:how to parse a url。
但是几年过去了,情况发生了变化。我能找到的问题的答案已经过时了。 我不想通过正则表达式或某些黑客(例如将HTML节点创建为解析助手)来解析URL。我想要一些灵活的方法来从URL返回带有所有必需数据的对象。 我相信,有一些新的内置方法可以执行此操作,或者有一些新的革命性惊人方法和用于此目的的简单ES6库。
您能给我一些建议吗?
答案 0 :(得分:4)
我认为您正在寻找这样的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'));
答案 1 :(得分:1)
ES6是语言规范的一部分,而不是JavaScript的任何特定框架。因此,您不会在该语言中找到类似URL.parse()的内容。
您要查找的API是应用程序(例如浏览器或Node.js)的主机的一部分。在浏览器中,有一个URL界面:https://developer.mozilla.org/en-US/docs/Web/API/URL