FormData是一个用于处理表单数据的API,它可以通过JavaScript来创建一个FormData对象,然后将表单数据添加到该对象中。以下是一些常用的方法:
- append(name, value):向FormData对象中添加一个键值对,其中name是键,value是值。如果该键已经存在,则会将新的值添加到该键的值列表中。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
- set(name, value):向FormData对象中设置一个键值对,如果该键已经存在,则会将该键的值列表清空,并将新的值添加到该键的值列表中。
例子:
let formData = new FormData();
formData.set('username', 'John');
formData.set('email', 'john@example.com');
- delete(name):从FormData对象中删除指定的键值对。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
formData.delete('email');
- get(name):获取FormData对象中指定键的第一个值。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
let email = formData.get('email');
console.log(email); // "john@example.com"
- getAll(name):获取FormData对象中指定键的所有值。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
formData.append('email', 'johnny@example.com');
let emails = formData.getAll('email');
console.log(emails); // ["john@example.com", "johnny@example.com"]
- has(name):检查FormData对象中是否存在指定的键。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
let hasEmail = formData.has('email');
console.log(hasEmail); // true
- entries():返回一个迭代器,用于遍历FormData对象中的所有键值对。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
for (let [key, value] of formData.entries()) {
console.log(key + ': ' + value);
}
// Output:
// username: John
// email: john@example.com
- keys():返回一个迭代器,用于遍历FormData对象中的所有键。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
for (let key of formData.keys()) {
console.log(key);
}
// Output:
// username
// email
- values():返回一个迭代器,用于遍历FormData对象中的所有值。
例子:
let formData = new FormData();
formData.append('username', 'John');
formData.append('email', 'john@example.com');
for (let value of formData.values()) {
console.log(value);
}
// Output:
// John
// john@example.com