返回

获取 url 中的参数

前端

在网页开发中,经常需要从 URL 中获取参数。参数通常用于传递数据,例如,在产品详情页面的 URL 中,可能会包含产品的 ID,这样就可以通过这个 ID 获取到产品的信息。在 JavaScript 中,可以通过以下三种方法来获取 URL 中的参数:

<ol>
  <li><strong>指定参数名称,返回该参数的值或者空字符串。</strong></li>
  <p>使用这种方法,需要指定要获取的参数名称。如果该参数存在,则返回该参数的值;如果该参数不存在,则返回一个空字符串。例如,如果 URL 为 <code>https://example.com/product?id=123</code>,则可以通过以下代码获取参数 <code>id</code> 的值:</p>
  <code>
    const id = new URLSearchParams(window.location.search).get('id');
  </code>
  <p><code>id</code> 的值为 <code>"123"</code></p>
  <li><strong>不指定参数名称,返回全部的参数对象或者 {}。</strong></li>
  <p>使用这种方法,不需要指定要获取的参数名称。返回一个包含所有参数的键值对的对象。例如,如果 URL 为 <code>https://example.com/product?id=123&name=Product A</code>,则可以通过以下代码获取所有参数:</p>
  <code>
    const params = new URLSearchParams(window.location.search);
  </code>
  <p><code>params</code> 的值为:</p>
  <code>
    {
      id: "123",
      name: "Product A"
    }
  </code>
  <li><strong>如果存在多个同名参数,则返回数组。</strong></li>
  <p>使用这种方法,如果存在多个同名参数,则返回一个包含这些参数值的数组。例如,如果 URL 为 <code>https://example.com/product?id=123&id=456</code>,则可以通过以下代码获取参数 <code>id</code> 的值:</p>
  <code>
    const ids = new URLSearchParams(window.location.search).getAll('id');
  </code>
  <p><code>ids</code> 的值为 <code>["123", "456"]</code></p>
</ol>

<p>希望这篇文章能对您有所帮助。如果您有任何其他问题,请随时留言。</p>