Skip to content

Mini Lodash-ES 源码解析: 精选核心工具函数的实现原理

本书将带你深入 Lodash 源码,掌握 JavaScript 工具函数的设计思想与实现技巧。


第一部分:基础架构 (Foundations)

  1. Lodash 概览与源码结构
  2. 内部工具函数解析
  3. 类型判断基础设施

第二部分:类型判断方法 (Lang Methods)

  1. 类型判断方法概览
  2. 基础类型判断:isArray、isObject、isFunction
  3. 空值与边界判断:isNil、isEmpty、isEqual
  4. 数值类型判断:isNumber、isNaN、isFinite
  5. 深度克隆:clone 与 cloneDeep
  6. 类型转换:toArray、toString、toNumber

第三部分:数组方法 (Array Methods)

  1. 数组方法概览与设计模式
  2. 数组分块与展平:chunk、flatten、flattenDeep
  3. 数组过滤:compact、uniq、uniqBy
  4. 数组查找:find、findIndex、indexOf
  5. 数组集合运算:difference、intersection、union
  6. 数组取值:head、last、nth、take、drop
  7. 数组变换:zip、unzip、fromPairs
  8. 数组移除:pull、pullAll、remove、without

第四部分:集合方法 (Collection Methods)

  1. 集合方法概览与迭代器模式
  2. 遍历方法:forEach、forEachRight
  3. 映射方法:map、flatMap
  4. 过滤方法:filter、reject、partition
  5. 查找方法:find、findLast、includes
  6. 归约方法:reduce、reduceRight
  7. 分组方法:groupBy、keyBy、countBy
  8. 排序方法:sortBy、orderBy
  9. 判断方法:every、some
  10. 采样与随机:sample、sampleSize、shuffle

第五部分:对象方法 (Object Methods)

  1. 对象方法概览与属性遍历
  2. 属性访问:get、set、has、unset
  3. 对象合并:assign、merge、defaults
  4. 对象筛选:pick、pickBy、omit、omitBy
  5. 对象遍历:keys、values、entries、forIn
  6. 对象变换:mapKeys、mapValues、invert

第六部分:函数方法 (Function Methods)

  1. 函数方法概览与高阶函数
  2. 节流防抖:debounce、throttle
  3. 函数缓存:memoize
  4. 调用控制:once、before、after
  5. 柯里化:curry、curryRight
  6. 参数处理:partial、partialRight、ary
  7. 函数包装:negate、flip、wrap
  8. 延迟执行:defer、delay

第七部分:字符串方法 (String Methods)

  1. 字符串方法概览
  2. 大小写转换:camelCase、kebabCase、snakeCase
  3. 字符串处理:trim、pad、repeat、truncate
  4. 字符串检测:startsWith、endsWith、includes
  5. 模板引擎:template

第八部分:数学与数值方法 (Math & Number Methods)

  1. 数学方法:add、subtract、multiply、divide
  2. 统计方法:max、min、mean、sum
  3. 数值处理:clamp、inRange、random
  4. 精度控制:ceil、floor、round

第九部分:工具方法 (Util Methods)

  1. 工具方法概览
  2. 迭代器工厂:iteratee、matches、property
  3. 函数组合:flow、flowRight
  4. 生成器:range、times、uniqueId
  5. 常量函数:identity、constant、noop
  6. 条件执行:cond、conforms、defaultTo

第十部分:链式调用 (Seq Methods)

  1. 链式调用概览
  2. 链式包装:chain、value
  3. 惰性求值:tap、thru

第十一部分:实战与总结 (Practice & Summary)

  1. 手写 Mini-Lodash 核心库
  2. Lodash 设计模式总结
  3. 与原生 JavaScript 方法对比
  4. 总结与学习路径
Mini Lodash-ES 源码解析: 精选核心工具函数的实现原理 has loaded