JSON.Stringify() returns 未定义而不是文本
JSON.Stringify() returns undefined instead of text
我正在制作一个表格来下载用户输入的数据。到目前为止,文件已下载,但不是用户输入 returns [object Object]
我尝试使用 JSON.Stringify() 但它返回的文件中包含“undefined”。
即使 console.log() 给了我 {username: "asdasd", password: "sdasdasd"}
e.preventDefault();
console.log(formData);
var formDataString = JSON.stringify(FormData);
// ... submit to API or something
download(formDataString, 'json.txt', 'text/plain');
};
const initialFormData = Object.freeze({
username: "",
password: "",
});
function download(formDataString, fileName, contentType) {
var a = document.createElement("a");
var file = new Blob([formDataString], {type: contentType});
a.href = URL.createObjectURL(file);
a.download = fileName;
a.click();
}
我的完整代码可见here
预先感谢您的帮助。
如果您查看此处报告的代码片段的第 2 行和第 3 行,答案很简单:您说的 JSON.stringify(FormData)
大写 F ,而 console.log
输出 formData
具有较低的 f
变量在 JavaScript 中区分大小写,因此从未定义 FormData
(undefined
),而 formData
是您在上面正确定义的,并且 console.log(formData)
在控制台正确输出变量的内容。
我正在制作一个表格来下载用户输入的数据。到目前为止,文件已下载,但不是用户输入 returns [object Object]
我尝试使用 JSON.Stringify() 但它返回的文件中包含“undefined”。
即使 console.log() 给了我 {username: "asdasd", password: "sdasdasd"}
e.preventDefault();
console.log(formData);
var formDataString = JSON.stringify(FormData);
// ... submit to API or something
download(formDataString, 'json.txt', 'text/plain');
};
const initialFormData = Object.freeze({
username: "",
password: "",
});
function download(formDataString, fileName, contentType) {
var a = document.createElement("a");
var file = new Blob([formDataString], {type: contentType});
a.href = URL.createObjectURL(file);
a.download = fileName;
a.click();
}
我的完整代码可见here
预先感谢您的帮助。
如果您查看此处报告的代码片段的第 2 行和第 3 行,答案很简单:您说的 JSON.stringify(FormData)
大写 F ,而 console.log
输出 formData
具有较低的 f
变量在 JavaScript 中区分大小写,因此从未定义 FormData
(undefined
),而 formData
是您在上面正确定义的,并且 console.log(formData)
在控制台正确输出变量的内容。