This page was translated from English by the community. Learn more and join the MDN Web Docs community.
FormData.set()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since октябрь 2018 г..
Примечание: Эта возможность доступна в Web Workers.
Метод set() из интерфейса FormData присваивает новое значение существующему ключу внутри объекта FormData, или добавляет ключ/значение если до этого они не были установлены.
Разница между set() и FormData.append в том, что если заданный ключ уже существует, set() заменит данные в нем на новые, а FormData.append добавит новое значение к остальным в конец.
Синтаксис
Существует две формы использования данной функции: с двумя и тремя параметрами:
formData.set(name, value);
formData.set(name, value, filename);
Параметры
name-
Имя поля, которому будет присвоен value.
value-
Значение, присваиваемое полю. В варианте с двумя параметрами, это
USVString, если нет, то оно будет конвертировано. В варианте с тремя параметрами это может бытьBlob,File, илиUSVString, И снова, если ни один из них не указан в значении то оно будет конвертировано в строку. filenameНеобязательный-
Имя файла, которое будет отправлено серверу (
USVString), когдаBlobилиFileпрошёл проверку как второй параметр. Стандартное имя файла дляBlobобъектов это "blob".
Примечание:
Если вы укажете Blob в качестве данных для включения в объект FormData, имя файла будет указано для сервера в заголовке "Content-Disposition" и может отличаться от браузера к браузеру.
Пример
Следующий код создаёт пустой FormData объект:
var formData = new FormData(); // Сейчас пустой
Вы можете установить для него пару ключ/значение, используя FormData.set:
formData.set("username", "Chris");
formData.set("userpic", myFileInput.files[0], "chris.jpg");
Спецификации
| Specification |
|---|
| XMLHttpRequest> # dom-formdata-set> |
Совместимость с браузерами
Enable JavaScript to view this browser compatibility table.