您的位置:首页 > Web前端 > Node.js

nodejs读取并去重excel文件

2018-04-22 14:12 1416 查看

如何使用,直接上代码

/**
* 安装node-xlsx插件
*/
var path = require('path')
var fs = require('fs')
var xlsx = require('node-xlsx')
//去重算法
Array.prototype.unique = function () {
this.sort(); //先排序
var res = [this[0]];
for (var i = 1; i < this.length; i++) {
if (this[i] !== res[res.length - 1]) {
res.push(this[i]);
}
}
return res;
}
//取得xlsx
var obj = xlsx.parse(path.resolve(`./xlsx/x.xlsx`))
var newArray = []
//读取第一列
//obj[0].data:指第一个sheet的表格数据
//data内部的数据结构为:
//[[ 'field1','field2','field13' ],[ 'field1','field2','field13' ]]
for (var data of obj[0].data) {
newArray.push(data[0])
}
//去重之前
console.log(newArray.length)
var openIds = newArray.unique();
//去重之后
console.log(newArray.length)
var j = 0
for (var i = 0; i < newArray.length; i++) {
//每一行
console.log(newArray[i])
}

解析一下

node-xlsx导出的数据结构如下:

//json结构
[{
name: 'sheet1 name',
data: [['field1', 'field2', 'field13'],
['field1', 'field2', 'field13']]
},
{
name: 'sheet2 name',
data: [['field1', 'field2', 'field13'],
['field1', 'field2', 'field13']]
}]

以上就是小编整理的全部内容,很多时候我们用到对EXCEL的文件操作,大家在测试的时候如还有任何疑问可以在下面的留言区讨论,感谢大家对脚本之家的支持。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nodejs excel