首页 > 技术文章 > 前端用原生js实现导出表格

xiaoluoli 2022-03-22 10:24 原文

工作中需要前端将数据转成表格导出下载:首先将数据转换成矩阵格式,再使用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()
}

 

推荐阅读