jump__jump

446
获赞数
10
关注数
3992
粉丝数
上海
IP 属地上海
2018-05-03 加入
浏览 28k

猎奇者...未来战士...very vegetable

2,536 声望|专家
全站排名超越 99.4% 用户
javascript
1.5k
前端
528
vue.js
514
typescript
258
小程序
199
个人动态
  • 发布了文章2023-10-07
    聊聊前端框架的未来 Signals
    国庆节前最后一周在 Code Review 新同学的 React 代码,发现他想通过 memo 和 useCallback 只渲染被修改的子组件部分。事实上该功能在 React 中是难以做到的。因为 React 状态变化后,会重新执行 render 函数。也就是在组件中调用 setState 之后,整个函数将会重新执...
  • 发布了文章2023-09-24
    前端持久化缓存优化
    缓存是提升 web 应用程序有效方法之一,尤其是用户受限于网速的情况下。提升系统的响应能力,降低网络的消耗。当然,内容越接近于用户,则缓存的速度就会越快,缓存的有效性则会越高。
  • 发布了文章2023-09-10
    利用中介模式开发全局控制器
    随着应用程序的规模增大,对象越来愈多,他们之间的关系也越来复杂。对象间很容易出现相互引用而导致程序无法运行。同时开发者需要改变或者删除某一个对象时候,需要查找并且改造所有引用到它的对象。这样一来,改造的成本会变的非常高。
  • 发布了文章2023-09-10
    聊聊版本号的作用与价值
    在项目开发和运行的过程中,总是少不了各类升级。例如某个功能组件需要更高的依赖库、数据项需要进行兼容等等问题。遇到此类问题开发者需要使用版本号来解决。今天我们就来分析一下项目迭代过程中会遇到的各类升级问题以及如何使用版本号来解决。
  • 发布了文章2023-06-27
    聊聊存储引擎的实现要素
    众所周知,MySQL 的 InnoDB 存储引擎使用了 B+ 树作为索引实现,那么为什么不使用其他的数据结构呢?数组、链表或者哈希表。实现存储引擎究竟需要什么条件呢?
  • 发布了文章2023-06-18
    让 React 拥有更快的虚拟 DOM
    Million.js 是一个非常快速和轻量级的 ( <4kb) 虚拟 DOM。框架可以通过包装 React 组件来提升性能(该框架目前版本只兼容 React 18 及以上版本)。
  • 发布了文章2023-02-14
    手写一个前端存储工具库
    在项目开发的过程中,为了减少提高性能,减少请求,开发者往往需要将一些不易改变的数据放入本地缓存中。如把用户使用的模板数据放入 localStorage 或者 IndexedDB。代码往往如下书写。
  • 发布了文章2022-12-18
    从 await-to-js 到 try-run-js
    之前在做 code review 时候发现有同事使用 try catch 包装了一堆异步代码,于是个人就觉得很奇怪,难道不应该只 catch 可能出问题的代码吗?同事告诉我说 try catch 太细的话会出现内外作用域不一致,需要提前声明变量。
  • 发布了文章2022-12-13
    手写一个 React 动画组件
    在项目开发的过程中,设计师不免会做一些动画效果来提升用户体验。如果当前效果不需要交互,只是用来展示的话,我们完全可以利用 GIF 或者 APNG 来实现效果。不了解 APNG 小伙伴可以看看这篇博客 APNG 历史、特性简介以及 APNG 制作演示。
  • 发布了文章2022-12-08
    手写一个同步服务端时间的小工具
    在前端开发的过程中,开发者经常会用到 new Date() 来获取当前时间,但是 new Date() 是获取的当前操作系统的时间,由于用户可以修改当前电脑时间,所以它是不准确的。
  • 发布了文章2022-12-06
    不可变数据工具库 immutability-helper
    之前学习函数式编程语言的过程中,有 3 比较重要的特性:函数是一等公民数据不可变惰性求值JavaScript 虽然具有函数式语言的特性,但是很可惜,它还是没有具备不可变数据这一大优势。在开发复杂系统的情况下,不可变性具有两个非常重要的特性:不可修改 (减少错误的...
  • 发布了文章2022-12-01
    手写一个业务数据比对库
    在开发 web 应用程序时,性能都是必不可少的话题。同时通用 web 应用程序离不开数据的增删改查,虽然用户大部分操作都是在查询,但是我们也不可以忽略更改数据对于系统的影响。于是个人写了一个业务数据比对库 diff-helper。方便开发者在前端提交数据到服务端时候去...
  • 赞了文章2022-09-05
    精读《依赖注入简介》
    原文按照 “如何解决无法做单测的问题、统一依赖注入的入口、如何自动保证依赖顺序正确、循环依赖怎么解决、自上而下 vs 自下而上编程思维” 的思路,将依赖注入从想法起点,到延伸出来的特性连贯的串了起来。
  • 发布了文章2022-07-25
    使用 normalizr 进行复杂数据转换
    笔者曾经开发过一个数据分享类的小程序,分享逻辑上类似于百度网盘。当前数据可以由被分享者加工然后继续分享(可以控制数据的过期时间、是否可以加工数据以及继续分享)。
  • 发布了文章2022-06-28
    确保从列表中获取可用值
    对于很多项目来说,某些配置项或查询条件是必需的。当用户丢失配置数据或项目下线配置项,都会导致项目发生错误而造成不可用的问题,这时候,开发需要提供一些兜底策略,如当前列表数据查询不到时默认使用第一项。
  • 发布了文章2022-06-18
    玩转 AbortController 控制器
    绝大部分情况,网络请求都是先请求先响应。但是某些情况下,由于未知的一些问题,可能会导致先请求的 api 后返回。最简单的解决方案就是添加 loading 状态,在所有请求都完成后才能进行下一次请求。
  • 发布了文章2022-05-08
    聊聊并发控制锁
    对于企业应用来说,完全不涉及到并发的问题,基本是不可能的。因为对于一个应用中很多的事情都是同时进行的。并发可能发生在数据获取,服务调用乃至于用户交互中。并发问题有两个重要的解决方案,一个是隔离,另一个是不变性。
  • 发布了文章2021-08-24
    使用 better-queue 管理复杂的任务
    队列,在数据结构中是一种线性表,其特性为必须从一端插入,然后从另一端删除数据。但笔者今天重点不是如何实现该数据结构,我们可以看一看如何借助队列管理复杂的任务。
  • 点评了产品2021-08-16
    uTools - Windows· 下非常棒的工具,用 js 可以开发自动化工具
    最喜欢哪些功能,好在哪里?插件化设置,可以结合其他工具共同使用用 js 可以开发自动化工具基本上不用再跳到文档里面了有小型调试类工具简单,易用不喜欢哪些功能,缺点或不足是什么?目前插件较少,不过可以通过通过接口自行编写工具 workflow 编排能力方面比较弱基本没了潜力较大,后期估计会付费使用他解决了你的哪...
  • 发布了文章2021-05-21
    利用增量构建工具 Preset 打造自己的样板库
    以前我没得选,必须面向搜索引擎。基于 webpack 或 rollup 来一步步构建项目,在开发过程中还有可能发生很多错误。但现在我只想专注于当前业务,挑选合适的脚手架之后迅速构建自己的项目,这样的话,就可以把大量维护性的工作交给开源作者。