URLSearchParams怎么构造和解析字符串
时间: 2023-10-26 10:19:55 浏览: 145
`URLSearchParams` 是一个 JavaScript 内置对象,用于构造和解析查询字符串。它提供了一组 API,可以方便地添加、删除、获取和迭代查询字符串中的参数。
以下是一些常用的方法和示例:
1. `append(name, value)`:添加一个键值对
```javascript
const params = new URLSearchParams();
params.append('name', 'John');
params.append('age', 30);
console.log(params.toString()); // "name=John&age=30"
```
2. `delete(name)`:删除指定名称的参数
```javascript
const params = new URLSearchParams('name=John&age=30');
params.delete('age');
console.log(params.toString()); // "name=John"
```
3. `get(name)`:获取指定名称的参数值
```javascript
const params = new URLSearchParams('name=John&age=30');
console.log(params.get('name')); // "John"
```
4. `set(name, value)`:设置指定名称的参数值,如果该名称的参数不存在,则添加一个新的键值对
```javascript
const params = new URLSearchParams('name=John&age=30');
params.set('name', 'Mary');
params.set('gender', 'female');
console.log(params.toString()); // "name=Mary&age=30&gender=female"
```
5. `keys()`:返回一个包含所有参数名称的迭代器
```javascript
const params = new URLSearchParams('name=John&age=30');
for (const key of params.keys()) {
console.log(key); // "name", "age"
}
```
6. `values()`:返回一个包含所有参数值的迭代器
```javascript
const params = new URLSearchParams('name=John&age=30');
for (const value of params.values()) {
console.log(value); // "John", "30"
}
```
7. `entries()`:返回一个包含所有键值对的迭代器
```javascript
const params = new URLSearchParams('name=John&age=30');
for (const [key, value] of params.entries()) {
console.log(key, value); // "name" "John", "age" "30"
}
```
阅读全文