如何在客户端将Javascript数组数据导出到excel

如何在客户端将Javascript数组数据导出到excel,javascript,arrays,excel,export,Javascript,Arrays,Excel,Export,我一直在努力处理Javascript数组数据,以便将其放在客户端的excel中。我读过这个, 但这是CSV。我想要Excel。我得到了一个好答案。它可能会帮助其他人 function excelformat() { var result_table = [ ["Day", "Month", "Year"], ["1", "January", "2016"], ["2", "February", "2016"]

我一直在努力处理Javascript数组数据,以便将其放在客户端的excel中。我读过这个,


但这是CSV。我想要Excel。

我得到了一个好答案。它可能会帮助其他人

function excelformat() {
        var result_table = [
            ["Day", "Month", "Year"],
            ["1", "January", "2016"],
            ["2", "February", "2016"],
            ["3", "March", "2016"],
            ["4", "April", "2016"],
        ];
        var lineArray = [];
        result_table.forEach(function(infoArray, index) {
            var line = infoArray.join(" \t");
            lineArray.push(index == 0 ? line : line);
        });
        var csvContent = lineArray.join("\r\n");
        var excel_file = document.createElement('a');
        excel_file.setAttribute('href', 'data:application/vnd.ms-excel;charset=utf-8,' + encodeURIComponent(csvContent));
        excel_file.setAttribute('download', 'Visitor_History.xls');
        document.body.appendChild(excel_file);
        excel_file.click();
        document.body.removeChild(excel_file);
    }

这根本不是excel文件-它仍然是一个CSV,带有
.xls
文件扩展名CSV带有“,”用于行,“\n”用于新行,则CSV的数据类型为text/CSV;charset=utf-8。我的观点是,你声称这会创建一个XLS文件,但它不会,它会创建一个CSV文件,文件扩展名为
.XLS
,这不会将实际内容从CSV更改为更复杂的xlsHow。我能这样做吗?例如,画一些粗体线,画边界线。这是你的答案,伙计