如何用JavaScript实现获取URL参数值的多种方法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计661个文字,预计阅读时间需要3分钟。
目录+前言+URLSearchParams+URL+纯JS+前言+在URL中,查询参数字符串值通常提供有关请求的信息,例如搜索参数或正在使用的对象的ID。如果在前端处理业务逻辑或请求逻辑,理解如何从U中获取这些信息至关重要。
目录
- 前言
- URLSearchParams
- URL
- 纯JS
前言
在 URL 中,查询参数字符串值通常提供有关请求的信息,例如搜索参数或正在使用的对象的 ID。如果在前端处理任何业务或请求逻辑,了解如何从 URL 中检索查询字符串值非常重要。本文分享三种从 URL 获取参数的方法。
URLSearchParams
除 IE 11 之外的所有主要浏览器版本都支持该URLSearchParams接口。它通过解析 URL 的查询字符串并提供访问值的方法来工作。
例如:
此接口的缺点之一是您必须仅将 URL 的查询字符串传递给它。如果您正在使用当前的浏览器 URL,这很容易做到,因为您只需通过window.location.search。 如果您使用任何其他 URL,则需要单独解析并传递查询字符串。
const params = new URLSearchParams("q=devpoint&page=1"); params.get("q"); // 'devpoint' params.get("page"); // '1'
要将查询参数解析为对象,请使用URL.searchParams的.entries()方法,该方法返回一个Iteratorkey/value对,并将Object.fromEntries其转换为对象。
const params = new URLSearchParams("q=devpoint&page=1"); const entries = params.entries(); Object.fromEntries(entries); // {q: 'devpoint', page: '1'}
URL
除了 IE 11 之外,所有主要浏览器版本也都支持URLAPI。它提供了一种更灵活的 URL 解析方式,还提供了一种访问查询字符串值的方式。
例如:
const url = new URL("stackabuse.com/search?q=devpoint&page=1"); const searchParams = url.searchParams; searchParams.get("q"); // 'devpoint' searchParams.get("page"); // '1'
url.searchParams与URLSearchParams返回的实例对象类型相同。
上面的url对象也将URL的所有部分分解成各个部分。
例如:
url.href; // 'stackabuse.com/search?q=devpoint&page=1' url.origin; // 'stackabuse.com' url.protocol; // 'stackabuse.com/search?q=devpoint&page=2"); // { q: 'devpoint', page: '2' }
到此这篇关于JavaScript三种获取URL参数值的方法的文章就介绍到这了,更多相关JS获取URL参数值内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!
本文共计661个文字,预计阅读时间需要3分钟。
目录+前言+URLSearchParams+URL+纯JS+前言+在URL中,查询参数字符串值通常提供有关请求的信息,例如搜索参数或正在使用的对象的ID。如果在前端处理业务逻辑或请求逻辑,理解如何从U中获取这些信息至关重要。
目录
- 前言
- URLSearchParams
- URL
- 纯JS
前言
在 URL 中,查询参数字符串值通常提供有关请求的信息,例如搜索参数或正在使用的对象的 ID。如果在前端处理任何业务或请求逻辑,了解如何从 URL 中检索查询字符串值非常重要。本文分享三种从 URL 获取参数的方法。
URLSearchParams
除 IE 11 之外的所有主要浏览器版本都支持该URLSearchParams接口。它通过解析 URL 的查询字符串并提供访问值的方法来工作。
例如:
此接口的缺点之一是您必须仅将 URL 的查询字符串传递给它。如果您正在使用当前的浏览器 URL,这很容易做到,因为您只需通过window.location.search。 如果您使用任何其他 URL,则需要单独解析并传递查询字符串。
const params = new URLSearchParams("q=devpoint&page=1"); params.get("q"); // 'devpoint' params.get("page"); // '1'
要将查询参数解析为对象,请使用URL.searchParams的.entries()方法,该方法返回一个Iteratorkey/value对,并将Object.fromEntries其转换为对象。
const params = new URLSearchParams("q=devpoint&page=1"); const entries = params.entries(); Object.fromEntries(entries); // {q: 'devpoint', page: '1'}
URL
除了 IE 11 之外,所有主要浏览器版本也都支持URLAPI。它提供了一种更灵活的 URL 解析方式,还提供了一种访问查询字符串值的方式。
例如:
const url = new URL("stackabuse.com/search?q=devpoint&page=1"); const searchParams = url.searchParams; searchParams.get("q"); // 'devpoint' searchParams.get("page"); // '1'
url.searchParams与URLSearchParams返回的实例对象类型相同。
上面的url对象也将URL的所有部分分解成各个部分。
例如:
url.href; // 'stackabuse.com/search?q=devpoint&page=1' url.origin; // 'stackabuse.com' url.protocol; // 'stackabuse.com/search?q=devpoint&page=2"); // { q: 'devpoint', page: '2' }
到此这篇关于JavaScript三种获取URL参数值的方法的文章就介绍到这了,更多相关JS获取URL参数值内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

