随着前端工程化的发展,许多日常工作中需要处理的数据都会以 Excel 表格的形式出现。但是,在前端开发的过程中,我们往往需要将这些表格数据转换为 JSON 格式,并进行下一步处理。本文将会介绍一款 npm 包 convert-excel-to-json
,并详细讲解它的使用方法,指导读者能够方便地将 Excel 表格转换为 JSON 数据,以此提高开发效率。
什么是 convert-excel-to-json
?
convert-excel-to-json
是一款在 Node.js 环境下使用的 npm 包,它能够将 Excel 表格数据转换为 JSON 格式。它支持 .xls
以及 .xlsx
两种 Excel 表格格式,并且可以输出多种不同格式的 JSON 数据。它的安装使用也非常简单,只需要在命令行中输入以下代码即可:
npm install convert-excel-to-json
安装完成后,我们就可以开始使用该 npm 包。
使用方法
在开始使用 convert-excel-to-json
模块之前,需要保证你的电脑上已经安装了 Node.js 环境。并且,我们还需要准备一份 Excel 表格,数据格式可以参考以下示例。
id | name | gender | age |
---|---|---|---|
1 | Tom | male | 20 |
2 | Lili | female | 22 |
3 | Jack | male | 25 |
4 | Rose | female | 23 |
5 | Michael | male | 24 |
该表格一共包含了五条记录,每条记录包括 id
,name
,gender
和 age
四个字段。我们将使用 convert-excel-to-json
将其转换为 JSON 格式。
读取 Excel 表格
在将 Excel 表格转换为 JSON 数据之前,我们首先需要通过 convert-excel-to-json
的 excelToJson()
方法来读取表格文件:
const excelToJson = require('convert-excel-to-json'); const result = excelToJson({ sourceFile: 'test.xlsx' });
上述代码中,我们通过 require
的方式引入了 convert-excel-to-json
模块,然后将读取文件的参数传入 excelToJson()
方法中。其中,sourceFile
参数需要指定需要读取的 Excel 文件路径。执行以上代码后,我们就可以获得该表格的 JSON 数据,其中属性名和值将以 Sheet
名称的方式输出。
console.log(result);
输出结果如下:
-- -------------------- ---- ------- - ------- - - --- -- ----- ------ ------- ------- ---- -- -- - --- -- ----- ------- ------- --------- ---- -- -- - --- -- ----- ------- ------- ------- ---- -- -- - --- -- ----- ------- ------- --------- ---- -- -- - --- -- ----- ---------- ------- ------- ---- -- - - -
从输出结果中可以看到,我们成功读取了 Excel 表格数据,并将其转换为 JSON 格式。其中,Sheet1
为 Excel 表格的表名,对于多表格文件,也将以类似 Sheet2
,Sheet3
这样的方式输出。
转换数据格式
在读取 Excel 表格数据之后,我们可能需要将其转换成自己需要的数据格式。convert-excel-to-json
提供了多个转换选项,包括直接输出键值对、以行为单位输出 JSON 数据等多种方式。我们可以通过传入不同的选项参数来实现这些不同的数据格式转换。
下面列举几个主要的选项参数:
header
: 是否在输出结果中包含表头信息columnToKey
: 将指定列的值作为键值range
: 指定要输出的行与列范围
下面是一个示例,它将使用上述代码读取的 Excel 表格数据,并通过 conversionOptions
参数指定输出的 JSON 格式:
-- -------------------- ---- ------- ----- ------ - ------------- ----------- ------------ -------- ----- - -- ------------ - -- ----- -- ------- -- --------- -- ----- -- ------ ------- --- --------------------
上述代码中,我们通过传入 header
参数,指定将表头信息输出到 JSON 中,即第一行作为 JSON 数据的键名;通过 columnToKey
参数,将每一列的值作为 JSON 的键值,即将 A
,B
,C
和 D
列的值分别指定为 id
,name
,gender
和 age
;通过 range
参数,指定输出范围为第二行到第五行的数据。执行以上代码后,输出结果如下:
[ { id: 1, name: 'Tom', gender: 'male', age: 20 }, { id: 2, name: 'Lili', gender: 'female', age: 22 }, { id: 3, name: 'Jack', gender: 'male', age: 25 }, { id: 4, name: 'Rose', gender: 'female', age: 23 } ]
从输出结果中可以看到,我们成功将 Excel 表格数据转换为了我们需要的 JSON 数据格式。
总结
本文介绍了一个轻量级 npm 包 convert-excel-to-json
的使用方法,并通过具体的代码实例详细讲解了如何将 Excel 表格数据转换为 JSON 格式。本文的内容对于需要在前端开发中处理 Excel 表格的开发者有一定的指导意义。希望本文能够对读者有所帮助,并在实际开发工作中能够更好地利用 convert-excel-to-json
进行数据处理。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedb249b5cbfe1ea061115e