nodejs读取并去重excel文件
投稿:laozhang
给大家带来一篇关于用nodejs实现excel文件的读取并去重的功能,有兴趣的朋友参考学习下。
如何使用,直接上代码
/** * 安装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的文件操作,大家在测试的时候如还有任何疑问可以在下面的留言区讨论,感谢大家对脚本之家的支持。