使用 Gulp 快速打包项目

讲解了 Gulp 的安装与使用,包括创建任务、压缩 JS 和 HTML 文件、合并多个文件,以及通过 gulp.watch() 实现文件变化监听与自动构建。使用 gulp-uglify、gulp-concat 等插件,通过输入、管道、输出的方式高效处理文件,提高开发效率。

使用 peerDependencies 缩减项目体积

介绍了 peerDependencies 的作用及使用场景,可用于避免依赖模块的版本冲突,解决多版本重复加载问题。通过在模块中声明 peerDependencies,项目和依赖模块可以共用同一版本的依赖,但需手动安装。案例展示了在项目中使用 peerDependencies 统一管理依赖版本的效果。

实现 new

介绍了 JavaScript 中 new 操作符的工作原理及其四个步骤,并通过 myNew 方法模拟实现 new 的功能。示例展示了构造函数返回普通对象或自定义对象时的不同行为,帮助理解 new 的内部机制及其应用场景。

强缓存和协商缓存

介绍了浏览器缓存机制的两种方式:强缓存和协商缓存。强缓存通过 Expires 和 Cache-Control 实现,本地直接读取资源;协商缓存通过 Last-Modified / If-Modified-Since 和 Etag / If-None-Match 判断是否更新,命中时返回 304 状态码以减少资源加载。

柯里化 & 求和

介绍了函数柯里化的概念及其实现方法,通过递归调用将函数参数逐步累积,直至满足条件后执行。示例展示了柯里化在求和函数中的应用,通过重写 toString 方法实现链式调用并返回结果。