node-xlsx将Excel表格数据转换为JSON格式

一名前端开发者因项目需求,自学使用Node.js及node-xlsx插件处理Excel数据,实现数据的快速转换与应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:某个项目采用mock模拟数据,客户给了一份Excel,身为前端的我等了一个星期的数据还是没有等到,中间穿插了N个项目。。。故事是这样开始的

  •     某一天老板跟我说:“小王啊,我最近实在太忙,这数据实在没有时间处理,你帮忙处理下吧!” 
  •     我:“这个没有弄过。。。”  心想:“我是一名前端,这不是后端的事吗”
  •     老板:“你搜下node插件,有专门处理Excel数据的,很简单的。给你一天时间,客户要得急!!!”

作为一名小前端,业余学过一点node,之前本人参加公司的编程比赛时用过node跑程序,刚好被老板看到了。。。

结局:

'use strict';
let _ = require('lodash');
let xlsxrd = require('node-xlsx');
let excelFilePath = './demo.xlsx';

// 读取excel中所有工作表的数据
let list = xlsxrd.parse(excelFilePath);
// 获取excel中第一个工作表的数据
let data = list[0].data;
let result = [];
// 字段过滤
_.forEach(data.slice(1), (d) => {
    result.push({ rank: d[0], name: d[1], info: d[8], platform: d[9] });
});

console.log('原始格式数据:', JSON.stringify(list));
console.log('');
console.log(`${list[0].name}:`, JSON.stringify(result));

         代码中用的ES6的语法,引入了一个方法库lodash。这是一个单独demo,很简单的。实际项目中有8个工作表。

运行结果:

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值