Javascript 是否从Json导出到CSV而不带引号?
我知道CSV文件有引号等,但我的导出将是网络上传的特定导入,因此我需要使用CSV文件,但不带引号Javascript 是否从Json导出到CSV而不带引号?,javascript,Javascript,我知道CSV文件有引号等,但我的导出将是网络上传的特定导入,因此我需要使用CSV文件,但不带引号 downloadFile(data: any) { const replacer = (key, value) => value === null ? '' : value; // specify how you want to handle null values here const header = Object.keys(data[0]); let csv
downloadFile(data: any) {
const replacer = (key, value) => value === null ? '' : value; // specify how you want to handle null values here
const header = Object.keys(data[0]);
let csv = data.map(row => header.map(fieldName => JSON.stringify(row[fieldName], replacer)).join(';'));
csv.unshift(header.join(';'));
let csvArray = csv.join('\r\n');
var a = document.createElement('a');
var blob = new Blob(['\ufeff',csvArray], {type: 'text/csv'}),
url = window.URL.createObjectURL(blob);
a.href = url;
a.download = "myFile.csv";
a.click();
window.URL.revokeObjectURL(url);
a.remove();
}
这是我的代码,一切正常,但我不知道它将引号放在哪里。JSON中的字符串需要用引号分隔,因此当您将每个标题字段转换为JSON时,它们会被添加 如果需要纯字符串,请不要转换为JSON
几乎可以肯定,您最好使用生成CSV,而不是自己滚动。不要手动生成CSV文件。迟早你会碰到一个边缘案例,打破整个局面。安装一个CSV库,您还可以在其中指定是否希望数据中的字符串用引号括起来。