基于单向链表的 fiber reconciler

2021/02/16

从数据结构层面分析 react fiber reconciler 使用单向链表作为底层数据结构的原因

自动化主题导入和修改检测

2021/02/09

借助前端工程化 infra 实现自动化主题导入,并对修改的主题变量进行合规检测。

从 DFS 中恢复二叉树

2020/09/26

本文阐述了如何从二叉树的前中后遍历中的任意两种遍历结果来恢复原始二叉树。

前缀树

2020/09/06

前缀树又称字典树,在搜索引擎关键字索引编排,输入法文字匹配,动态路由匹配,不可变数据(如 immutable.js)等等领域都有广泛应用实践。

nodejs promisify 实现

2020/08/20

本文主要阐述了在 nodejs 中的 promisify 的实现方式,并归纳其核心原理。

链表的反转和删除算法策略

2020/08/01

链表是基于离散存储(或称链式存储),而非像 arrayslice 之类数据结构使用的顺序存储。

滑动窗口策略

2020/07/26

基于滑动窗口策略解决子串查找问题。

如何解决 n 数之和问题

2020/07/19

归纳 n 数之和的基本解法。

从 RFC 到 chromium 的缓存新鲜度定义

2020/06/15

结合 chromium 项目中 HTTP 模块的实现来探讨 HTTP 缓存实现方式。

watcher 更新如何与 nextTick 协作

2020/05/10

阐述在 Vue.js v2.6.11 中所有的 watcher 实例是如何借助内置 nextTick 特性优化 update 触发。

computed/watch 的响应式链路

2020/04/25

在遵循直觉的前提下,说起 "响应式" 这三个字,你会想起什么?

从 libuv 看 nodejs 事件循环

2020/03/17

浅析基于 libuv 的 nodejs event loop。

从 Promises/A+ 看异步流控制

2020/02/15

在 Promise/A+ 下如何实现 Promise。

nodejs 中的 commonjs

2020/01/17

commonjs 在 nodejs 中是如何落地 module scope。

前端持久化状态管理

2019/12/25

基于本地存储和网络通信协议的状态管理核心实践路径。

基于 QWebChannel 的前端通信方案

2019/07/28

实践 QT WebEngine 中嵌入 Vue.js。

vue-router 源码探究——路由重置实现

2019/06/26

基于 vue-router 源码实现动态路由删除功能

前端权限控制的基本实现

2019/06/25

基于前端路由的权限模块落地实践。

Vue.js 的 nextTick 实现

2018/09/06

解析 nextTick 在 Vue.js v2.x 中的核心实现路径。

使用 CSSOM 测量 DOM 元素

2018/09/01

基于 DOM API CSSOM 测量 DOM 元素的几何信息。

SPA 与 MPA 的比较与优化

2018/08/04

分析单页面应用和多页面应用的落地场景差异和各自解决的业务痛点。

Event loops 中的 Async Function

2018/07/26

本文旨在讨论 async function 的实现原理。

JS 执行上下文

2018/05/07

本文主要讲述在事件循环中,每一个宏任务或每一个微任务是如何被具体执行的。即被推入执行上下文栈(execution context stack,亦称调用栈 call stack)的代码是如何被具体执行的。

探究 BFC 以及闭合浮动原理

2018/03/29

BFC 形成原因,及其对 normal flow 的影响,并在最后与闭合浮动进行比较。

解析 event loops

2018/03/08

解析 HTML Living standard 中的 event loop 模型。

理解 this 的指向

2018/02/06

JS this 关键字