我创建了下面的代码,它接受一个 JSON 对象并通过 ConvertToCSV 函数将其转换为逗号分隔。我的问题是如何获取变量 csvData 并将其下载为 csv 文件?
此代码已存在于单击按钮时执行的函数中
var jsonObject = JSON.stringify(data);
var toCSV = ConvertToCSV(jsonObject);
var csvData = 'data:application/csv;charset=utf-8,' + encodeURIComponent(toCSV);
最佳答案
使用blob存储到本地然后下载。例如
http://jsfiddle.net/koldev/cw7w5/
var saveData = (function () {
var a = document.createElement("a");
document.body.appendChild(a);
a.style = "display: none";
return function (data, fileName) {
var json = JSON.stringify(data),
blob = new Blob([json], {type: "octet/stream"}),
url = window.URL.createObjectURL(blob);
a.href = url;
a.download = fileName;
a.click();
window.URL.revokeObjectURL(url);
};
}());
var data = { x: 42, s: "hello, world", d: new Date() },
fileName = "my-download.json";
saveData(data, fileName);
这个http://jsfiddle.net/e5ggkkur/1/将在 Firefox 中工作
关于javascript - 将逗号分隔的字符串下载为 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32094663/