URLSearchParams

简介: 【6月更文挑战第4天】

JavaScript 中的 URL()URLSearchParams() 是两个与 URL 处理相关的 Web API,它们提供了创建、解析、修改 URL 以及操作查询字符串的方法。

URL()

URL() 构造函数用于创建一个表示 URL 的对象。它允许开发者解析一个 URL 并访问其组成部分,如协议、主机名、路径、查询字符串等。使用 URL() 可以很容易地获取 URL 的各个部分,并且可以对它们进行操作。

创建和使用 URL 对象

const url = new URL('https://example.com/path?name=ferret&color=purple');
console.log(url.href);      // 输出:https://example.com/path?name=ferret&color=purple
console.log(url.protocol);  // 输出:https:
console.log(url.host);      // 输出:example.com
console.log(url.hostname);  // 输出:example.com
console.log(url.pathname);  // 输出:/path
console.log(url.search);    // 输出:?name=ferret&color=purple

修改 URL

URL() 对象的属性,如 searchhostnamepathnamehash,都是可写的,这意味着可以修改它们并相应地更新 URL。

URLSearchParams()

URLSearchParams 对象提供了一种方便的方法来处理 URL 中的查询字符串。它允许开发者获取、设置、更新或删除查询参数。

创建和使用 URLSearchParams 对象

const searchParams = new URLSearchParams('name=ferret&color=purple');
console.log(searchParams.get('name'));    // 输出:ferret
console.log(searchParams.get('color'));   // 输出:purple
searchParams.set('color', 'orange');
console.log(searchParams.toString());    // 输出:name=ferret&color=orange

操作方法

  • append(name, value): 向查询字符串添加一个新的键值对。
  • delete(name): 从查询字符串中删除指定的参数。
  • get(name): 获取指定参数的第一个值。
  • getAll(name): 获取指定参数的所有值。
  • has(name): 检查查询字符串中是否存在指定的参数。
  • set(name, value): 设置查询字符串中参数的值。

使用场景

URLSearchParams 特别适用于处理表单提交或构建 API 请求的查询字符串。它简化了查询参数的解析和构建过程。

目录
相关文章
|
1月前
|
前端开发 JavaScript 搜索推荐
解密: SPA 与 MPA
单页面应用(SPA)是一种Web应用架构,其中所有的内容和功能都包含在单一的HTML页面中。这种应用在用户与界面交互时不会进行全页刷新,而是通过动态更新页面上的局部内容来提供流畅的用户体验。多页面应用(MPA)是一种传统的Web应用程序架构,它由多个页面组成,每个页面都是一个独立的文档,通常包含自己的一套JavaScript、CSS等资源。当用户在应用中导航时,浏览器会重新加载整个页面和相关的资源。
|
1月前
|
Java Spring
@RequestParams是这作用?
@RequestParams是这作用?
|
Java API Spring
@RequestParam和@PathVariable的区别
@RequestParam注解获取URL中携带的请求参数的值既URL中“?”后携带的参数,传递参数的格式是:key=value;@PathVariable注解用于获取URL中路径的参数值,参数名由RequestMapping注解请求路径时指定,常用于restful风格的api中,传递参数格式:直接在url后添加需要传递的值即可
132 0
|
机器学习/深度学习 存储 PyTorch
params.data.clone()是什么意思?params是模型的参数
在深度学习中,模型的参数通常是由多个张量组成的。这些张量存储了模型在训练过程中学到的权重和偏置等参数。 params.data 是一个张量,其中包含了模型的参数数据。clone() 是 PyTorch 中的一个方法,它用于创建一个与当前张量具有相同数据但不同内存地址的新张量。 因此,params.data.clone() 的意思是创建一个与 params.data 张量具有相同数据但不同内存地址的新张量。通常,这个方法被用来复制模型参数,以便在优化器中使用。
214 0
|
SQL Java 数据库连接
Parameter ‘XXX‘ not found.Available parameters are [arg2, arg1, arg0, param3, param1, param2]
当SQl语句的占位符和映射接口方法的参数名不一致时,需要将某个参数强行注入到某个占位符变量上时,可以使用@Param这个注解来标注映射的关系(@Param(“占位符的参数名”) 数据类型 自己定义的参数名)
Parameter ‘XXX‘ not found.Available parameters are [arg2, arg1, arg0, param3, param1, param2]
|
云栖大会
apaas 、ipaas
apaas 、ipaas自制脑图
154 0
apaas 、ipaas
|
JSON 数据格式
parse 和parseObject 有什么区别
JSON.parse()返回的结果是Object对象
288 0
PAT有几个pat
字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位§,第4位(A),第6位(T);第二个PAT是第3位§,第4位(A),第6位(T)。 现给定字符串,问一共可以形成多少个PAT?
86 0
@RequestParam和@PathVariable的作用
@RequestParam和@PathVariable的作用
253 0
@RequestParam和@PathVariable的作用