首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用js-xlsx解析Excel中的数据

使用js-xlsx解析Excel中的数据
EN

Stack Overflow用户
提问于 2019-01-15 11:07:02
回答 1查看 59关注 0票数 0

我正在使用js-xlsx,如果需要,这里是我的excel sheet的链接。我使用了以下代码:

代码语言:javascript
复制
/* set up XMLHttpRequest */
var url = "Test.xlsx";
var oReq = new XMLHttpRequest();
oReq.open("GET", url, true);
oReq.responseType = "arraybuffer";

oReq.onload = function(e) {
var arraybuffer = oReq.response;

/* convert data to binary string */
var data = new Uint8Array(arraybuffer);
var arr = new Array();
for(var i = 0; i != data.length; ++i) arr[i] =String.fromCharCode(data[i]);
var bstr = arr.join("");

/* Call XLSX */
var workbook = XLSX.read(bstr, {type:"binary"});

/* DO SOMETHING WITH workbook HERE */
var first_sheet_name = workbook.SheetNames[0];
/* Get worksheet */
var worksheet = workbook.Sheets[first_sheet_name];

console.log(XLSX.utils.sheet_to_json(worksheet,{raw:true}));
}
oReq.send();

在控制台loge中,我得到以下输出:

代码语言:javascript
复制
(3) […]​0: Object { FirstName: "Mayuresh", MiddleName: "Dinkar ", LastName: "Joshi", … }​1: Object { FirstName: "Arun", MiddleName: "Vikas", LastName: "Pathak", … }​2: Object { FirstName: "Narendra", MiddleName: "Damodardas", LastName: "Modi", … }​length: 3​<prototype>: Array []

我肯定不知道如何访问这些数据。我不知道该怎么称呼它。我尝试过arr.length,但它只返回1,它应该返回3。JS文件返回的长度是3,但我不确定它是从哪里提取的。我只需要访问那个数组。谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-15 11:18:18

看起来它起作用了。试试这个来看看...

代码语言:javascript
复制
let worksheet = workbook.Sheets[first_sheet_name];
let objects = XLSX.utils.sheet_to_json(worksheet,{raw:true});
let names = objects.map(object => `${object.FirstName} ${object.LastName}`);
console.log(names);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54192193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档