跳到主要内容

主题模版

模版结构

# <主题标题>

<!-- 由多个符合问题模版的结构组成一个主题 -->
<问题1>

<问题2>

主题下问题的组织顺序

核心原则是遵循认知学习规律,帮助面试者自然地构建知识体系,避免知识诅咒。 对于复杂的主题,可以进一步建立目录,按照子主题来再做拆分。 如果在一个文件中,主题参考如下原则对问题排序

提示

对于学科下主题,如果该主题下涉及多个子主题,建议拆解出升级到学科层级,比如框架等,虽然都归类为框架,但是框架本身并不是一个特定学科,所以每个框架都可以单开一个学科,然后在学科下再细分主题。

主要排序原则(由高到低优先级)

  1. 知识依赖关系
    • 确保前置知识先于需要这些前置知识的内容出现
    • 例如:先讲变量和类型,再讲类型转换
  2. 概念层级递进
    • 从基础概念到进阶应用
    • 例如:先讲基本数据类型,再讲引用类型,最后讲类型判断方法
  3. 复杂度递增
    • 从简单到复杂
    • 例如:先讲作用域,再讲闭包
  4. 应用频率
    • 从日常高频使用概念到低频特殊场景
    • 例如:先讲常规DOM操作,再讲页面性能优化
  5. 面试问到频率
    • 在实际面试中被问到的概率高低
    • 例如:事件循环比WeakMap更常被问到

示例如下,以JavaScript类型系统主题为例:

基本类型和引用类型(基础概念,无依赖)
类型判断方法(依赖于对类型的理解)
类型转换规则(依赖于对各类型特性的理解)
==和===的区别(依赖于类型转换规则)
包装类型(进阶概念,但需要基本类型知识)
Symbol和BigInt(较新的类型,复杂度较高)
22%