引言

Web 性能优化是一个经久不衰的话题。正如 web.dev for China 所说:网页性能看似小众,实则深度与广度兼具。性能优化既简单易学又充满乐趣,是一门信息丰富的综合性学科。

为什么需要性能优化

页面性能直接影响用户体验。一个响应缓慢的网站会让用户失去耐心,而流畅的交互能让用户愿意停留更久。性能优化的本质,就是通过技术手段让页面更快、更流畅。

从技术角度看,Web 性能优化围绕两个核心指标展开:

  • 首页加载性能 - 用户从打开页面到看到内容需要多长时间
  • 更新性能 - 页面响应用户交互的速度如何

具体实现方法涉及多个层面:减小资源体积、优化服务器部署、改善浏览器内存管理、优化渲染线程、改进 CSS 动画、重构代码结构、调整加载策略等。这是一个需要综合运用多种技术的领域。


本知识库的特点

本文档采用交互式学习方式,帮助你在实践中理解性能优化:

  • 全面的知识体系 - 涵盖性能分析、静态资源优化、渲染优化、网络优化等核心主题
  • 体验式学习 - 每个页面都包含可操作的案例,你可以主动"破坏"网站性能,观察问题如何发生
  • 丰富的实例与工具 - 配合代码示例和分析工具,帮助你理解优化原理
  • 持续更新 - 随着 Web 技术发展同步更新内容,保持时效性
  • 适合不同水平 - 无论你是初学者还是有经验的开发者,都能找到适合的内容

如何使用本文档

本文档的核心理念是:先体验问题,再学习解决方案

我们在文档中设置了多个交互演示。你可以主动触发性能问题,观察页面如何变慢甚至卡死。这种直观的体验能让你理解为什么需要优化。

试试下面这组按钮,依次点击,观察页面反应:

// 递归计算斐波那契数列,随着数列的增加,计算时间会指数级增加,当达到 45 时,页面甚至会崩溃。
const fibonacci = (n: number): number => {
  if (n <= 1) return n;
  return fibonacci(n - 1) + fibonacci(n - 2);
};

在后续章节中,我们会讲解如何优化这类耗时计算,让页面在处理复杂任务时仍能保持流畅。


测试

上面第四个按钮结果是什么?
1.55
2.6765
3.832040
4.102334155
5.页面卡死了,没算出来。