JavaScript 导出csv
1. 修改指定列为中文
可以通过遍历数据对象,将需要转换为中文的字段值替换为中文显示。
2. 删除不需要的列
可以在导出数据之前,删除不需要的列(例如 id
列)。
示例代码
exportAsCSV() {
// 原始数据
const data = [
{ id: 1, name: 'John Doe', age: 28, job: 'Engineer' },
{ id: 2, name: 'Jane Smith', age: 22, job: 'Designer' }
];
// 处理数据,转换为中文并去掉 id 列
const processedData = data.map(item => {
return {
姓名: item.name, // 将 name 列改为中文"姓名"
年龄: item.age, // 将 age 列改为中文"年龄"
职位: item.job // 将 job 列改为中文"职位"
};
});
// 转换为 CSV 格式
const csvData = this.convertToCSV(processedData);
// 导出 CSV 文件
const blob = new Blob([csvData], { type: 'text/csv;charset=utf-8;' });
const link = document.createElement('a');
const url = URL.createObjectURL(blob);
link.href = url;
link.setAttribute('download', 'data.csv');
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
// 将对象数组转换为 CSV 字符串
convertToCSV(objArray: any[]): string {
const array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;
let str = '';
// 获取并拼接表头
const header = Object.keys(array[0]).join(',');
str += header + '\r\n';
// 获取并拼接数据行
for (let i = 0; i < array.length; i++) {
let line = '';
for (const key in array[i]) {
if (line != '') line += ',';
line += array[i][key];
}
str += line + '\r\n';
}
return str;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!