跳到主要内容

认识

2023年11月06日
柏拉文
越努力,越幸运

一、认识


URLSearchParams 接口定义了一些实用的方法来处理 URL 的查询字符串。URLSearchParams 构造函数不会解析完整 URL,但是如果字符串起始位置有?的话会被去除。

二、语法


返回一个 URLSearchParams 对象。

const urlString = 'id=44444&timestamp=43432432432'
const urlParams = new URLSearchParams(urlString);
  1. 技巧一、通过 for……of遍历: URLSearchParams 的对象可以直接用在 for...of 结构中,而无需使用 URLSearchParams.entries()
const paramsString = "id=44444&timestamp=43432432432";
const searchParams = new URLSearchParams(paramsString);
for(const [key,value] of searchParams){
console.log(key); // id timestamp
console.log(value); // 444444 43432432432
}
  1. 技巧二、通过 Object.fromEntries 转换对象
const paramsString = "http://example.com?a=0&b=1&c=2";
const url = new URL(paramsString);
const searchParams = new URLSearchParams(url.search);
const searchMap = Object.fromEntries(searchParams);
console.log(searchMap); // {a: '0', b: '1', c: '2'}