简体   繁体   English

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

[英]How to export Javascript array data to excel on the client side

I have been struggling with Javascript array data to put it in excel on the client side.我一直在努力使用 Javascript 数组数据将其放入客户端的 excel 中。 I have read this, How to export JavaScript array info to csv (on client side)?我已经阅读了如何将 JavaScript 数组信息导出到 csv(在客户端)?

But that is for CSV.但那是针对 CSV 的。 I want Excel.我想要 Excel。

I got a good answer. 我得到了一个很好的答案。 It may help someone out there 它可能会帮助某个人

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);
    }

You can also use the package fs-browsers .您还可以使用fs-browsers包。
It has nice and easy export method for xls files.它具有很好且简单的 xls 文件导出方法。
It goes like this:它是这样的:

 import { exportFile, EXCEL_FILE } from 'fs-browsers'; const result_table = [ ["1", "January", "2016"], ["2", "February", "2016"], ["3", "March", "2016"], ["4", "April", "2016"], ]; const headings = ["Day", "Month", "Year"]; exportFile(result_table, { type: EXCEL_FILE, headings: headings });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM