一、介绍
这份代码借鉴了YouTube上的这个视频:https://www.youtube.com/watch?v=OK60UdWyUdE代码,讲解得很棒,让我一个不太懂javasript的小白明白了调用的机制。非常的感谢,差点我就放弃了。下面讲解下我的理解:(适合小白看,最后我会给出可以运行的文件包)
第一步:读取excel文件需要下载三个js文件:jquery-3.3.1.min.js,angular.min.js,angular.min.js这个文件会在我最后的包里面给出。
第二步: var workbook = XLSX.read(fileData, { type: 'binary' });,这一句代码可以把excel的所有信息读取到workbook变量中,我们需要做的是对workbook中信息的提取
第三步:可能导入的excel文件可能有多个表格,于是我只要第一个表格
var sheet0 = workbook.Sheets[workbook.SheetNames[0]]; //sheet0代表excel表格中的第一页
第四步:将sheet0的数据类型转化成javaScript喜欢的数据类型json
var str = XLSX.utils.sheet_to_json(sheet0);//利用接口实现转换。
此时str[0]表示excel表格的第二行,str[1]表示表格的第三行。那么第一行去哪里了,它代表着每一列的数据的标题的对象。通过str[0].column2(实际情况column1是第三行的数据名称)调用得到第二行第三列的数据
第五步:就是通过for(var i in str)和第一行的名称去得到你想要的哪一行的数据
二、举例
我想得到这个表格中第P,Q行的经度和纬度信息。我通过第四步str[i].LATB得到经度,str[i].LNGB得到纬度。但是可以发现其实LATB和LNGB是第一行的数据
程序的运行结果如下:
三、代码:(需要看的代码主要在:customjs.js,必须打开我的excel文件,因为我的第一行才有LATB)
链接:https://pan.baidu.com/s/1U8jdtdKos_hksVONS0dQuQ
提取码:ol3t
没问题的不要忘了点赞,花了我大半天的时间,谢谢