Método atualizado:
Em março de 2016, as versões recentes do Chrome e Firefox agora são compatíveis com FormData.entries()
a inspeção de FormData. Fonte .
// Create a test FormData object
var formData = new FormData();
formData.append('key1', 'value1');
formData.append('key2', 'value2');
// Display the key/value pairs
for (var pair of formData.entries()) {
console.log(pair[0]+ ', ' + pair[1]);
}
Obrigado ao Ghost Echo e rloth por apontar isso!
Resposta antiga:
Depois de examinar esses artigos da Mozilla , parece que não há como extrair dados de um objeto FormData. Você só pode usá-los para criar FormData para enviar por meio de uma solicitação AJAX.
Também acabei de encontrar esta pergunta que afirma a mesma coisa: FormData.append ("key", "value") não está funcionando .
Uma maneira de contornar isso seria criar um dicionário regular e convertê-lo em FormData:
var myFormData = {
key1: 300,
key2: 'hello world'
};
var fd = new FormData();
for (var key in myFormData) {
console.log(key, myFormData[key]);
fd.append(key, myFormData[key]);
}
Se você quiser depurar um objeto FormData simples, também poderá enviá-lo para examiná-lo no console de solicitação de rede:
var xhr = new XMLHttpRequest;
xhr.open('POST', '/', true);
xhr.send(fd);