当前位置: 首页 > news >正文

SheetJS的部分操作

成文时间:2023年2月18日
使用版本:"xlsx": "^0.18.5"

碎碎念:
有错请指正。
这个库自说自话升级到0.19。旧版的文档我记得当时是直接写在github的README上。
我不太会使用github,现在我不知道去哪里可以找到旧版的文档。
这种感觉让你觉得很无助,使用这样的库确实是没啥安全感。
代码修修改改是正常的,回头找不到文档了这算是什么事。。
当然,开源分享本身已经是伟大而值得尊敬的事。
作为伸手党也不能多比比什么。所以我这次使用希望把操作多积累下来一点,以防再遇到背刺吧。

文章目录

  • 读取文件
  • 排序

读取文件

        const reader = new FileReader();reader.readAsArrayBuffer(file);reader.onload = (e) => {let data = e.target.result;let wb = read(data)let sheets = wb.Sheets;// 获取json格式的数据let json_data = utils.sheet_to_json(sheets[wb.SheetNames[0]])// 取出header(json的属性key)let columns = Object.keys(json_data[0]).map((r) => (r))

sheet_to_json这里有个参数很奇怪,他文档示例里面的header
在这里插入图片描述
在这里插入图片描述
代码里面也确认有这个参数
用‘A’的时候,他会把json的属性名称都用字母表示,这样你就不用像我排序那节里面说的还需要一堆操作去获取属性名称了。
用string[]的时候也没问题,就是如果你给的List不够长。比如文件有6个列,你只给了5个string,会导致文件被截断成5列。
这个number的参数我很奇怪,一直没办法成功。我的理解是应该是指定一个行来生成属性名称
他的原文Create an array of arrays of JS values from a worksheet
但是我设置成啥数字都没效果,升级成文档对应的19版本也不行。使用时请注意。

排序

			// 指定排序的规则let sortList = sortSetting.split('|')// 指定排序列let sortColNum = utils.decode_col(sortCol)let sortColName = columns[sortColNum]// 过滤数据json_data = json_data.filter(item=>{return sortList.indexOf(item[sortColName]) >= 0})// 数据排序json_data.sort(function(a,b){return sortList.indexOf(a[sortColName]) - sortList.indexOf(b[sortColName]);});

相关文章:

SheetJS的部分操作

成文时间:2023年2月18日 使用版本:"xlsx": "^0.18.5" 碎碎念: 有错请指正。 这个库自说自话升级到0.19。旧版的文档我记得当时是直接写在github的README上。 我不太会使用github,现在我不知道去哪里可以找到…...

pytest总结

这里写目录标题一、pytest的命名规则二、界面化配置符合命名规则的方法前面会有运行标记三、pytest的用例结构三部分组成四、pytest的用例断言断言写法:五、pytest测试框架结构六、pytest参数化用例1、pytest参数化实现方式2、单参数:每一条测试数据都会…...

CNI 网络分析(九)Calico IPIP

文章目录环境流量分析Pod 间Node 到 PodPod 到 serviceNode 到 serviceNetworkPolicy理清和观测网络流量环境 可以看到,在宿主机上有到每个 pod IP 的路由指向 veth 设备 到对端节点网段的路由 指向 tunl0 下一跳 ens10 的 ip 有到本节点网段 第一个 ip 即 tunl0 的…...

分布式任务调度(XXL-JOB)

什么是分布式任务调度? 任务调度顾名思义,就是对任务的调度,它是指系统为了完成特定业务,基于给定时间点,给定时间间隔或者给定执行次数自动执行任务。通常任务调度的程序是集成在应用中的,比如&#xff1a…...

Django框架之模型视图--Session

Session 1 启用Session Django项目默认启用Session。 可以在settings.py文件中查看,如图所示 如需禁用session,将上图中的session中间件注释掉即可。 2 存储方式 在settings.py文件中,可以设置session数据的存储方式,可以保存…...

二极管的“几种”应用

不知大家平时有没有留意,二极管的应用范围是非常广的,下面我们来看看我想到几种应用,也可以加深对电路设计的认识: A,特性应用: 由于二极管的种类非常之多,这里这个大类简单罗列下&#xff1a…...

github上传本地文件详细过程

repository 也就是俗称的仓库 声明:后续操作基于win10系统 前提:有一个github账号、电脑安装了git(官方安装地址) 目的: 把图中pdf文件上传到github上的个人仓库中 效果: 温馨提示: git中复制: ctrl insert&#xf…...

常用聚类算法分析

1. 什么是聚类 1.1. 聚类的定义 聚类(Clustering)是按照某个特定标准(如距离)把一个数据集分割成不同的类或簇,使得同一个簇内的数据对象的相似性尽可能大,同时不在同一个簇中的数据对象的差异性也尽可能地大。也即聚类后同一类的数据尽可能聚集到一起…...

OSG三维渲染引擎编程学习之五十八:“第五章:OSG场景渲染” 之 “5.16 简单光源”

目录 第五章 OSG场景渲染 5.16 简单光源 5.16.1 场景中使用光源 5.16.2 简单光源示例 第五章 OSG场景渲染 OSG存在场景树和渲染树,“场景数”的构建在第三章“OSG场景组...

80211无线网络架构

无线网络架构物理组件BSS(Basic Service Set)基本服务集BSSID(BSS Identification)ssid(Service Set Identification)ESS(Extended Service Set)扩展服务集物理组件 无线网络包含四…...

基于springboot+vue的便利店库存管理系统

基于springbootvue的便利店库存管理系统 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景…...

3|物联网控制|计算机控制-刘川来胡乃平版|第1章:绪论|青岛科技大学课堂笔记|U1 ppt

目录绪论(2学时)常用仪表设备(3学时)计算机总线技术(4学时)过程通道与人机接口(6学时)数据处理与控制策略(6学时)网络与通讯技术(3学时&#xff0…...

js打印本地pdf(使用HttpPrinter打印插件)

js打印本地pdf(使用HttpPrinter打印插件)第一步:启动HttpPrinter打印插件第二步:用浏览器打开示例文件\调用示例\websocket协议示例\html\打印pdf.html输入pdf地址 点击 “下载并打印pdf文件”按钮,就可以静默打印了。…...

华为OD机试 - 双十一(Python) | 机试题算法思路 【2023】

最近更新的博客 【新解法】华为OD机试 - 关联子串 | 备考思路,刷题要点,答疑,od Base 提供【新解法】华为OD机试 - 停车场最大距离 | 备考思路,刷题要点,答疑,od Base 提供【新解法】华为OD机试 - 任务调度 | 备考思路,刷题要点,答疑,od Base 提供【新解法】华为OD机试…...

2020年UML 秋季期末测试题

1.UML的全称是(B )。A.Unified Making LanguageB.Unified Modeling LanguageC.Unified Meodem languageD.Unify Modeling Language2.UML主要应用于( C)。A.基于螺旋模型的结构化开发方法B.基于数据的数据流开发方法C.基于对象的面…...

SpringCloud - Ribbon负载均衡

目录 负载均衡流程 负载均衡策略 Ribbon加载策略 负载均衡流程 Ribbon将http://userservice/user/1请求拦截下来,帮忙找到真实地址http://localhost:8081LoadBalancerInterceptor类对RestTemplate的请求进行拦截,然后从Eureka根据服务id获取服务列表&…...

Spring Boot + Redis 实现分布式锁

一、业务背景有些业务请求,属于耗时操作,需要加锁,防止后续的并发操作,同时对数据库的数据进行操作,需要避免对之前的业务造成影响。二、分析流程使用 Redis 作为分布式锁,将锁的状态放到 Redis 统一维护&a…...

CAD二次开发 插件初始化接口IExtensionApplication

前言:在实际项目开发中,我们总会遇到一些问题。比如说在CAD打开之前,修改注册表的内容,或者解决CAD在没有完全加载想要的dll情况下,功能运行报错的bug。因此,下面和大家介绍一下IExtensionApplication接口 …...

kafka-11-kafka的监控工具和常用配置参数

kafka官方文档 参考Kafka三款监控工具比较 1 查看kafka的版本 进入kafka所在目录,通过查看libs目录下的jar包。 2.11是scala的版本,2.0.0是kafka的版本。 测试环境 #systemctl start zookeeper #systemctl start kafkka 2 kafka的常用配置 Kafka使用…...

前端PWA渐进式加载技术

1.什么是PWA? 渐进式网络应用(PWA)是谷歌在2015年底提出的概念。基本上算是web应用程序,但在外观和感觉上与原生app类似。支持PWA的网站可以提供脱机工作、推送通知和设备硬件访问等功能。 2.PWA有那些优点? 更小更…...

解密Java静态调用图:架构师的高效分析实战

解密Java静态调用图:架构师的高效分析实战 【免费下载链接】java-callgraph2 Programs for producing static call graphs for Java programs. 项目地址: https://gitcode.com/gh_mirrors/ja/java-callgraph2 你是否曾面对一个庞大的Java项目,想要…...

终极iOS越狱完整指南:5个步骤解锁iPhone隐藏功能

终极iOS越狱完整指南:5个步骤解锁iPhone隐藏功能 【免费下载链接】Jailbreak iOS 26.4 - 26, 17 - 17.7.5 & iOS 18 - 18.7.3 Jailbreak Tools, Cydia/Sileo/Zebra Tweaks & Jailbreak News Updates || AI Jailbreak Finder 👇 项目地址: http…...

Page Assist终极指南:3步安装本地AI浏览器助手,开启智能网页浏览新时代

Page Assist终极指南:3步安装本地AI浏览器助手,开启智能网页浏览新时代 【免费下载链接】page-assist Use your locally running AI models to assist you in your web browsing 项目地址: https://gitcode.com/GitHub_Trending/pa/page-assist 想…...

Boss-Key:Windows用户必备的窗口隐私保护神器,告别尴尬瞬间

Boss-Key:Windows用户必备的窗口隐私保护神器,告别尴尬瞬间 【免费下载链接】Boss-Key 老板来了?快用Boss-Key老板键一键隐藏静音当前窗口!上班摸鱼必备神器 项目地址: https://gitcode.com/gh_mirrors/bo/Boss-Key 你是不…...

PhonePi-MCP:基于MCP协议实现AI智能体自动化操控Android手机

1. 项目概述:当你的手机成为AI的“眼睛”与“双手” 最近在折腾AI智能体(Agent)时,我一直在思考一个问题:如何让这些运行在云端或本地电脑上的“大脑”真正地与现实世界互动?比如,让它帮我查一…...

FAST开发方法在系统分析中四个阶段

在系统分析师考试中,被频繁考查的FAST(Framework for the Application of Systems Thinking)方法,是一个聚焦于系统分析阶段的框架。 它的核心是将复杂的分析工作拆解为四个环环相扣的阶段:初始研究、问题分析、需求分析和决策分析。 📊 四个阶段速览 阶段 核心任务 1…...

成都口碑好的特斯拉专修公司有哪些

在成都,如果你是特斯拉车主,寻找一家靠谱的专修公司是非常重要的。今天就给大家推荐一家口碑极佳的特斯拉专修公司——TBA特斯拉专修(成都三业店),也就是成都市三业汽车服务有限责任公司。下面从多个方面来看看它的优势…...

AI技能库实战:模块化设计赋能博客创作自动化工作流

1. 项目概述:一个面向AI时代的博客技能开源库最近在GitHub上闲逛,发现了一个挺有意思的项目,叫inblog-inc/inblog-ai-skills。光看这个名字,就透着一股子“务实”的味道。它不是又一个教你如何调参炼丹的AI模型库,也不…...

别再傻傻分不清了!数字IC面试必问的Latch与Flip-Flop,我用Verilog代码给你讲明白

数字IC面试突围:Latch与Flip-Flop的Verilog避坑指南 1. 从门电路到时序逻辑:存储单元的本质差异 在数字电路设计中,存储单元如同城市交通的信号灯系统。锁存器(Latch)就像持续亮着的红灯——只要信号有效(电…...

C++头文件和cpp文件的原理分析

通常,在一个C程序中,只包含两类文件——.cpp文件和.h文件。 .cpp文件被称作C源文件,里面放的都是C的源代码.h文件则被称作C头文件,里面放的也是C的源代码,头文件不用被编译 C语言支持“分别编译”(separa…...