Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

WebWorker介绍是一种可由脚本创建的后台任务,任务执行中可以向其创建者收发信息。Worker() 构造函数创建一个 Worker 对象,该对象执行指定的 URL 脚本。这个脚本必须遵守同源策略。URL 脚本本质上依然是 JS 文件。 使用new Worker(aURL, options); aURL:worker脚本的URL。 options:可选,一个对象,包含以下属性。 type...

优化Echarts数据过多时的卡顿介绍当Echarts数据量过大时,会消耗大量性能,导致页面卡顿。此时需要对Echarts进行优化。 解决方案dataZoomdataZoom组件,用于区域缩放,概览数据整体,或去除其他数据。当然,只显示区域的数据量,可以大大减轻渲染压力。但使用dataZoom组件不能一下全部显示数据,需要手动选择。用户体验可能会受到影响。常用的配置项 12345678910...

前端导出自适应列宽的Excel介绍要根据用户选择将数据导出成自适应列宽的Excel,这边使用了exceljs库来实现。 实现引入库使用包管理工具引入库。我使用的是pnpm 1pnpm install exceljs 在需要用到的地方引入库。 12// 引入import * as XLSX from "xlsx"; 实现通过workbook创建生成excel文件。自适应...

监听div的动态宽高介绍resize或者onResize事件是window才有的事件。要监听div的宽高改变,就要监听window的resize后,做出了改变。而只是改变div的宽度呢,比如侧边栏展开闭合,不改变window的宽度,而只是改变div的宽度。使用 ResizeObserver api 可以单独监听div的宽高。 使用123456const resizeObserver = ne...

WebSocket介绍WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。主要用于代替 Ajax 轮询。节省服务器资源和带宽,进...

基于C52的简单计算器介绍使用STC89C52完成的包含加减乘和括号的2万以内的优先级运算。仿真使用Proteus,代码使用keil,对应的工程文件放在对应的目录下。 硬件设计处理芯片选择STC89C52。输入设备由4*4矩阵键盘与4个单独功能按键组成。输出设备由一块LCD1602显示屏与蜂鸣器组成。硬件仿真图如下(省略了晶振与复位电路): 软件设计该程序使用了逆波兰算法,但STC89C52...

重排与重绘介绍重排(回流)与重绘是当页面发生改变时,浏览器重新计算画面的操作。 重排:浏览器重新计算页面元素位置,并重新计算页面元素大小。 重绘:重新绘制页面元素。 当重排时一定会发生重绘。现代浏览器会对频繁的回流和重绘操作进行优化。浏览器会维护一个队列,把所有引起回流和重绘的操作放入队列中,如果队列中的任务数量或者时间间隔达到一个阈值的,浏览器就会将队列清空,进行一次批处理,这样可以把...

JS事件循环:宏任务和微任务介绍JS是单线程的,执行任务时,会按照顺序执行任务,而JS中依然存在异步任务,比如定时器、ajax、promise、setTimeout、setInterval、fetch、webSocket等等。JS为了实现这些异步任务,使用了事件循环这一机制。 事件循环JS 的运行时是多线程的,当 JS 需要执行异步任务时,浏览器会另外启动一个线程去执行该任务。常见的线程有定...

Vue3基础介绍Vue 是一款用于构建用户界面的前端框架。其基于标准 HTML、CSS 与 JavaScript 构建,提供了一套声明式的、组件化的编程模型,有效地提升了开发用户界面的效率。其特色有: 声明式渲染:基于标准 HTML 拓展了一套模板语法,可以声明式地描述最终输出的 HTML 和 JavaScript 状态之间的关系。 响应性:会自动跟踪 JavaScript 状态并在其发生...

vsc json-server post请求刷新页面产生原因在 vsc 中使用了 liveServer 插件。并且 json-server 的数据文件处于 liveServer 监视中。post 请求使 json-server 更新了 liveServer 监视中的文件导致页面刷新。 解决方法移动数据文件将 json-server 的数据文件从 liveServer 监视中移出。 修改 li...