用一次渲染理解 React Hooks
Hooks 的区别不在 API 名称,而在一次渲染中哪些值会被保留、哪些变化会触发下一次渲染,以及副作用何时清理。
10 篇
Hooks 的区别不在 API 名称,而在一次渲染中哪些值会被保留、哪些变化会触发下一次渲染,以及副作用何时清理。
循环数组只是起点。回调参数、稀疏数组、空数组和展开深度,决定了手写方法是否真的接近原生语义。
Promise.all 负责汇总结果,不负责限制同时运行的任务;并发控制需要接收尚未启动的任务函数,并维护运行数与等待队列。
二叉搜索树的中序遍历天然有序;访问到第 k 个节点即可提前停止,不必先生成完整数组。
把函数临时挂到对象上只能解释基本原理;要接近原生行为,还要处理 falsy 值、异常清理、基本类型和构造调用。
数组转树的关键是建立 id 索引;树转数组则要先决定遍历顺序,并避免为了输出而修改原树。
链表去重依赖输入有序,二分求平方根依赖单调区间;两个短题都说明前置条件比循环本身更重要。
三个字符串处理练习的共同点,是先定义输入契约:缺失段、编码字符、负数和小数都不能靠示例之外的运气。