Javascript Request获取请求参数如何实现


在JavaScript中,获取请求参数(通常指的是URL中的查询字符串参数)可以通过多种方式实现,但最常见和简洁的方法是使用URLSearchParams对象(适用于较新的浏览器)或者通过手动解析URL字符串。

### 使用URLSearchParams(推荐)

如果你的环境支持`URLSearchParams`(大部分现代浏览器都支持),这是最简洁的方法。


// 假设你的URL是 https://example.com/?name=John&age=30
// 你可以通过location.search获取查询字符串部分
const queryString = window.location.search;

// 使用URLSearchParams解析查询字符串
const params = new URLSearchParams(queryString);

// 获取具体的参数
const name = params.get('name'); // "John"
const age = params.get('age'); // "30"

console.log(name); // 输出: John
console.log(age); // 输出: 30

### 手动解析URL字符串

如果你的环境不支持`URLSearchParams`,或者你需要更灵活地处理URL,你可以手动解析查询字符串。


// 假设你的URL是 https://example.com/?name=John&age=30
// 你可以通过location.search获取查询字符串部分,并去掉前面的问号
const queryString = window.location.search.substring(1);

// 将查询字符串分割成键值对数组
const params = queryString.split('&').reduce((acc, current) => {
    const [key, value] = current.split('=');
    acc[decodeURIComponent(key)] = decodeURIComponent(value);
    return acc;
}, {});

// 获取具体的参数
const name = params.name; // "John"
const age = params.age; // "30"

console.log(name); // 输出: John
console.log(age); // 输出: 30

注意:在手动解析时,我使用了`decodeURIComponent`来确保URL编码的字符被正确解码。

这两种方法都可以有效地从URL中获取请求参数,你可以根据自己的需求和环境选择合适的方法。