前端用原生js实现导出表格
工作中需要前端将数据转成表格导出下载:首先将数据转换成矩阵格式,再使用BLOB格式化生成csv文件。
// 调用,data为转换后最终的数据格式 const data = [ "星期一,星期二,星期三,星期四,星期五", "1,2,3,4,5" ] const name = '测试表格' downExcel(data, name) /** * 将数据转表格下载 * data格式:["1,2,3","1,2,3"] */ function downExcel (data, name) { // 创建Blob对象 传入一个合适的MIME类型 const blob = new Blob( ['\ufeff' + data.join('\n')], { type: 'text/csv,charset=UTF-8' } ) const csvUrl = URL.createObjectURL(blob) let link = document.createElement('a') // 文件名字 link.download = `${name}.csv` // 触发下载 link.href = csvUrl link.click() }