准备好表格数据,可以使用JSON格式或者数组格式。使用以下代码来实现:
// 导出excel表格
function exportExcel(data, filename) {
let str = '';
for (let i in data[0]) {
str += '';
}
str += '';
for (let i = 0; i < data.length; i++) {
str += '';
for (let j in data[i]) {
str += '';
}
str += '';
}
str += '' + i + ' ' + data[i][j] + '
';
let excelFile = "";
excelFile += '';
excelFile += '';
excelFile += "";
excelFile += "";
excelFile += "";
excelFile += "";
excelFile += str;
excelFile += "";
excelFile += "";
let uri = 'data:application/vnd.ms-excel;charset=utf-8,' + encodeURIComponent(excelFile);
let link = document.createElement("a");
link.href = uri;
link.style = "visibility:hidden";
link.download = filename + ".xls";
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
上面的代码中,exportExcel函数接受两个参数,第一个参数是表格数据,第二个参数是文件名。在函数中,将表格数据转换成html格式,将html格式的表格数据转换成excel文件,使用a标签的download属性来下载excel文件。
使用实例
下面是一个的示例:
let data = [
{
name: '张三',
age: 18
},
{
name: '李四',
age: 20
}
];
exportExcel(data, 'test');
上面的代码中,我们定义了一个数组data,里面包含了两个对象,每个对象包含了name和age两个属性。我们使用exportExcel函数将data数组导出为excel文件,文件名为test。