nodejs读取并去重excel文件
更新时间:2018年04月22日 14:12:14 投稿: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的文件操作,大家在测试的时候如还有任何疑问可以在下面的留言区讨论,感谢大家对脚本之家的支持。
相关文章
Vue3+TypeScript报错:无法找到模块xx的声明文件问题
这篇文章主要介绍了Vue3+TypeScript报错:无法找到模块xx的声明文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-11-11谈谈VUE种methods watch和compute的区别和联系
本篇文章主要介绍了谈谈VUE种methods watch和compute的区别和联系,具有一定的参考价值,有兴趣的可以了解一下2017-08-08
最新评论