URLSearchParams
和 FormData
是在 JavaScript 中处理 URL 查询参数和表单数据的两个不同的对象。
1、URLSearchParams:
URLSearchParams
对象用于处理 URL 查询参数部分。它提供了一组方法来添加、删除和检索参数。- 通常,你可以通过实例化
URLSearchParams
对象,然后使用其方法来构建 URL 查询参数。 - 例子:
- let params = new URLSearchParams();
params.append('key1', 'value1');
params.append('key2', 'value2');
console.log(params.toString()); // 输出 "key1=value1&key2=value2"
2、FormDataFormData
对象用于构建表单数据。它通常与 HTML 表单元素一起使用,用于收集用户输入的数据。- 可以通过将表单元素传递给
FormData
构造函数来创建FormData
对象,也可以通过append
方法添加键值对。 - 例子:
- let formData = new FormData();
formData.append('username', 'john_doe');
formData.append('email', 'john_doe@example.com'); - 区别:
- Use Case:
URLSearchParams
主要用于处理 URL 查询参数,而FormData
用于构建和处理表单数据。
- Data Format:
URLSearchParams
保存键值对,主要用于构建 URL 查询参数字符串。FormData
可以包含键值对,也可以包含文件等二进制数据,用于模拟表单提交。
- Usage:
URLSearchParams
适用于处理简单的键值对,通常在处理 AJAX 请求时用于构建 URL 查询参数。FormData
更适合处理表单数据,特别是包含文件上传的表单。