如何使用JavaScript解析URL

  介绍

小编给大家分享一下如何使用JavaScript解析URL,希望大家阅读完这篇文章后大所收获、下面让我们一起去探讨吧!

开始

创建一个以下内容的HTML文件,并在浏览器中打开。

& lt; html>   ,,,& lt; head>   ,,,,,,,& lt; title> JavaScript  URL  parsing   ,,,& lt;/head>   ,,,& lt; body>   ,,,,,,,& lt; script>   ,,,,,,,,,,,//,激动人心的代码即将写在这里   ,,,,,,,& lt;/script>   ,,,& lt;/body>   & lt;/html>

如果你想尝试本文中的任何内容,可以将其放在& lt; script>标记中,保存,重新加载页面,看看会发生什么!在本教程中,将使用控制台。日志,来打印所需要的内容,你可以打开开发都工具,来查看内容。

什么是URL

这应该是相当简单的,但让我们说清楚。 <强> URL是网页的地址,可以在浏览器中输入以获取该网页的唯一内容。可以在地址栏中看到它:

如何使用JavaScript解析URL”> </p> <p> URL是统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。</p> <p>此外,如果你不熟悉基本URL路径的工作方式,可以查看此文学习。</p> <blockquote> <强> URL不都长的一样的</强> <p>这是一个快速提醒——有时URL可能非常奇怪,如下:</p> <p> https://example.com: 1234/页面/? a=b </p> <p> </p> <p> http://localhost/page.html https://154.23.54.156/page?x=..。</p> <p>文件:///用户/用户名/文件夹/file.png </p> </引用> <h3>获取当前URL </h3> <p>获取当前页面的URL非常简单,我们可以使用<代码>窗口。位置</代码>。</p> <p>试着把这个添加到我们形如写的的脚本中:</p> <pre类= console.log (window.location);

查看浏览器的控制台:

如何使用JavaScript解析URL”> </p> <p>不是你想要的吗?这是因为它不返回你在浏览器中看到的实际URL地址——它返回的是一个URL对象。使用这个URL对象,我们可以解析URL的不同部分,接下来就会讲到。</p> <h3>创建URL对象</h3> <p>很快就会看的到,可以使用URL对象来了解URL的不同部分。如果你想对任何URL执行此操作,而不仅仅是当前页面的URL,该怎么办?我们可以通过创建一个新的URL对象来实现。以下是如何创建一个:</p> <pre类= var  myURL =, new  URL (https://example.com& & # 39; # 39;);

就这么简单!可以打印<代码> myURL> myURL> console.log (myURL);

如何使用JavaScript解析URL”> </p> <p>出于本文的目的,将myURL设置为这个值:</p> <pre类= var  myURL =, new  URL (& # 39; https://example.com: 4000/文件夹/page.html ? x=y& a=b # section-2& # 39;)

将其复制并粘贴到<代码> & lt; script> 元素中,以便你可以继续操作!这个<代码> URL>

URL对象的结构

使用URL对象,可以非常轻松地获取URL的不同部分。以下是你可以从URL对象获得的所有内容。对于这些示例,我们将使用上面设置的<代码> myURL>

<强> href

URL的<代码> href> window.location。href .

console.log (myURL.href);//,输出:,“https://example.com: 4000/文件夹/page.html ? x=y& a=b # section-2"
<强>协议(协议)

URL的协议是一开始的部分。这告诉浏览器如何访问该页面,例如通过HTTP或HTTPS。但是还有很多其他协议,比如<强> ftp (文件传输协议)和<强> ws (WebSocket)。通常,网站将使用HTTP或HTTPS。

虽然如果你的计算机上打开了文件,你可能正在使用文件协议! URL对象的协议部分包括<代码>:代码,但不包括<代码>//。让我们看看<代码> myURL> console.log (myURL.protocol);//,输出:,“https:“

<强>主机名(主机名)

主机名是站点的域名。如果你不熟悉域名,则它是在浏览器中看到的URL的主要部分,例如google.com

如何使用JavaScript解析URL