记录.前端实现导出Excel、CSV、PDF文件

一、导出CSV文件
<body>
    <button id="export">点击我导出CSV文件</button>
    <script>
        function exportCsv(obj) {//json数据导出方法
            let title = obj.title;//列表头部
            let dataKey = Object.keys(obj.data[0]);//拿到对象数据的键,因为是一样的所以只去第一个即可
            let data = obj.data;//列表内容
            let str = [];
            str.push(obj.title.join(",") + "\r\n");//拼接 enter 键或者换行符
            for (let i = 0; i < data.length; i++) {
                let temp = [];
                for (let j = 0; j < dataKey.length; j++) {
                    temp.push(data[i][dataKey[j]]);
                }
                str.push(temp.join(",") + "\r\n");//拼接 enter 键或者换行符
            }
            let blob = new Blob(['\uFEFF' + str.join('')], {
                type: 'text/plain;charset=utf-8',
            });
            let downloadLink = document.createElement("a");
            downloadLink.href = URL.createObjectURL(blob);
            downloadLink.download = "test.csv";//导出的文件名
            downloadLink.click();
        }
        document.getElementById("export").onclick = function () {
            exportCsv({
                title: ["国家", "首都", "GDP"],
                data: [
                    {country:'中国',city:'北京',gdp:'8千万亿'},
                    {country:'俄罗斯',city:'莫斯科',gdp:'7千万亿'},
                    {country:'巴西',city:'巴西利亚',gdp:'6千万亿'},
                    {country:'日本',city:'东京',gdp:'5千万亿'},
                    {country:'英国',city:'伦敦',gdp:'4千万亿'},
                    {country:'法国',city:'巴黎',gdp:'3千万亿'},
                    {country:'韩国',city:'首尔',gdp:'2千万亿'},
                ]
            });
        }
    </script>
</body>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值