new urlSearchParams

164 阅读1分钟

URLSearchParams 是一个js内建函数,它提供了一种方便的方式来读取、设置和删除URL查询字符串中的参数。

创建URLSearchParams实例。

从字符串创建

你可以直接从一个查询字符串创建一个URLSearchParams实例。

let searchParams = new URLSearchParams('search=javascript&sort=relevance')
从现有URL创建

或者,如果你有一个完整的URL,你可以提取查询字符串部分来创建。

let url = new URL('https://exx/search?query=javascript&mode=advanced');
let searchParams = new URLSearchParams(url.search)

添加参数

使用append 方法向查询字符串添加参数

searchParams.append('page','2')

获取参数值

  • 使用get 方法获取单个参数的值
let query = searchParams.get('search') // 返回javascript
  • 使用getAll 获取同名所有参数的值(如果有多个)
let pages = searchParams.getAll('page') // 返回['2']

设置参数值

使用set方法设置或者更新参数值

searchParams.set('sort','date')

删除参数

使用delete方法删除指定参数

searchParams.delete('mode')

检查是否存在某个参数

使用has方法检查是否包含某个参数

let hasQuery = searchParams.has('search') // 返回true 或 false

更新整个查询字符串

使用toString方法得到新的查询字符串

let newQueryString = searchParams.toString();//返回 'search=javascript&page=2&sort=date'

替换或初始化参数

通过传递一个对象或初始参数字符串来替换现有的参数

searchParams = new URLSearchParams({filter:'active',limit:10})

这些是URLSearchParams的基本操作,它使得处理URL查询字符串变得更加简单和高效。