FormData

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

注意:此功能在 Web Workers 中可用。

FormData 接口提供了一种构建一组表示表单字段及其值的键/值对的方法,这些键/值对可以使用 fetch()XMLHttpRequest.send()navigator.sendBeacon() 方法发送。它使用的格式与表单将编码类型设置为 "multipart/form-data" 时使用的格式相同。

如果想生成一个表单在进行简单的 GET 提交时会生成的查询参数,也可以直接将它传递给 URLSearchParams 构造函数。

一个实现 FormData 的对象可以直接用于 for...of 结构,而不是使用 entries()for (const p of myFormData) 等同于 for (const p of myFormData.entries())

构造函数

FormData()

创建一个新的 FormData 对象。

实例方法

FormData.append()

FormData 对象中,向现有键追加一个新值,如果该键不存在则添加该键。

FormData.delete()

FormData 对象中删除一个键/值对。

FormData.entries()

返回一个 迭代器,用于迭代 FormData 中包含的所有键/值对。

FormData.get()

FormData 对象中返回给定键关联的第一个值。

FormData.getAll()

FormData 对象中返回给定键关联的所有值的数组。

FormData.has()

返回一个 FormData 对象是否包含某个特定键。

FormData.keys()

返回一个 迭代器,用于迭代 FormData 中包含的所有键/值对的键。

FormData.set()

FormData 对象中设置一个现有键的新值,如果该键/值不存在则添加该键/值。

FormData.values()

返回一个 迭代器,用于迭代 FormData 中包含的所有值。

规范

规范
XMLHttpRequest
# interface-formdata

浏览器兼容性

另见