前端导出功能实现--csv文件格式

记录一下前端导出文件的功能,目前该功能仅支持导出csv文件格式,如下是function:

function exportCvs(com,model,param){
            var title = storageObj.title;
            var titleForKey = storageObj.titleForKey;
            var data = storageObj.data;
            var str = [];
            str.push(storageObj.title.join(",")+"\n");
            for(var i=0;i<data.length;i++){
                var temp = [];
                for(var j=0;j<titleForKey.length;j++){
                    temp.push(data[i][titleForKey[j]]);
                }
                str.push(temp.join(",")+"\n");
            }
            var uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str.join(""));
            var downloadLink = document.createElement("a");
            downloadLink.href = uri;
            downloadLink.download = new Date().toISOString().substring(0,10)+"-labelDetail.csv";
            document.body.appendChild(downloadLink);
            downloadLink.click();
            document.body.removeChild(downloadLink);
};

参数com、model、param没有使用,可以不传递数据。
storageObj为一个Object对象,格式如下所示:
var storageObj = {
title:[“时间”,”label名称”, “点击次数”],
titleForKey:[“labelTime”, “labelName”, “labelCount”],
data:[]
};
titile是第一行的说明行,titleForKey的数组数量与title一致。
data是一个对象数组,基本的格式为:

[{
    "labelTime":"value1",
    "lableName":"value2",
    "labelCount":"value3"
},{
    "labelTime":"value4",
    "lableName":"value5",
    "labelCount":"value6"
},{
    "labelTime":"value7",
    "lableName":"value8",
    "labelCount":"value9"
}] 

数据的添加可以采用storageObj.data数组对象动态添加。
最后导出的csv文件的格式如下图所示:
export csv file

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值