好,我帮你把 V2.0 方案调整成 中英双语文件夹命名,并且在结尾加一个 参考 Demo,让你用 Obsidian 直接落地。
前端知识架构文档(V2.1)
—— 骨架清晰、执行顺畅、长期可维护
适用人群:0-1 年入门 & 1+ 年进阶,双模式自由切换
记录工具:Obsidian
0. 文档目标
-
一张完整地图:宏观掌握体系,微观快速索引
-
一套可持续笔记流:新知识 30 秒内挂载
-
三层溯源法:出处 → 验证 → 应用场景
-
半自动更新:目录、标签、索引由脚本生成
1. 目录结构(中文 / 英文双命名)
FrontEnd-KB/
├─ 00-元信息-Meta/ # 架构说明、模板、维护计划、脚本
│ ├─ README.md
│ ├─ 例行维护-Routine.md
│ └─ 笔记模板-T-Zettel.md
│
├─ 01-文法-Grammar/ # 语言文法
│ ├─ 01-词法-Lexical/ # 关键字、字面量、运算符
│ └─ 02-语法-Syntax/ # 表达式、语句、模块体系
│
├─ 02-语义-Semantics/ # 语言语义
│ ├─ 01-作用域-Scope/
│ ├─ 02-This指向-This/
│ └─ 03-类型-Types/
│
├─ 03-运行时-Runtime/ # 执行环境
│ ├─ 01-数据结构-DataStructures/
│ └─ 02-执行流程-Execution/
│
├─ 04-浏览器环境-Browser/ # 宿主环境
│ ├─ 01-WebIDL/
│ ├─ 02-渲染-Rendering/
│ ├─ 03-安全-Security/
│ └─ 04-性能-Performance/
│
├─ 05-工程化与跨端-Toolchain/ # 工程工具
│ ├─ 01-转译-Transpilers/
│ ├─ 02-打包-Bundlers/
│ └─ 03-跨平台-CrossPlatform/
│
├─ 06-设计模式-Patterns/ # 架构与设计模式
│ ├─ 01-UI模式-UI-Patterns/
│ ├─ 02-状态管理-State-Management/
│ └─ 03-性能模式-Performance-Patterns/
│
├─ 07-实践案例-Practices/ # 最佳实践
│ ├─ 01-编码规范-Coding-Style/
│ ├─ 02-测试-Testing/
│ └─ 03-部署-Deployment/
│
├─ 99-收集箱-Inbox/ # 临时笔记(每日清理)
└─ scripts/ # 自动化脚本
优化点
-
中英文并列命名 → 中文快速理解,英文方便工具、跨团队协作。
-
结构分为 7 大类 + 收集箱,确保扩展性。
2. 笔记模板(Obsidian 专用)
保存路径:00-元信息-Meta/笔记模板-T-Zettel.md
---
title: {{title}}
tags: [{{parentTag}}, {{customTags}}]
create: {{date}}
source: {{url|book|spec|talk}}
status: draft|verified
---
## 1 原始出处(溯源)
- 标准 / 论文 / 源码:
- 链接或 DOI:
## 2 核心结论(≤1 句话)
> 用一句话把事说清。
## 3 最小可运行示例
```js
// 控制在 5 行以内
4 应用场景
-
生产案例:
-
常见坑点:
5 知识体系定位
6 验证记录
-
实验环境:
-
验证结果:
7 扩展阅读
-
相关 Issue / PR:
-
性能 / 兼容性参考:
8 个人备注
-
面试考点:
-
待跟进:
---
### 3. 新知识点 30 秒挂载流程
1️⃣ **分类定位**
- 文法 / 语义 / 运行时 / 浏览器 / 工程化 / 模式 / 实践
- 数据类 → Grammar / Semantics / Runtime
- 流程类 → Runtime / Browser / Toolchain
- 思想类 → Patterns / Practices
- 有无官方规范(ECMA / W3C / WHATWG / IETF)
2️⃣ **快速创建**
```bash
node scripts/autoNote.js "optional chaining" --parent "02-语义-Semantics/03-类型-Types"
3️⃣ 验证归档
-
写 5 行以内 demo → 填“验证记录”
-
建父节点 & 兄弟节点反链
4. 自动化工具链
scripts/
下包含:
-
autoNote.js
→ 新笔记模板生成(中英路径支持) -
buildIndex.js
→ 自动生成目录索引(支持中文标题) -
tagStats.js
→ 统计标签云 -
checkDrafts.js
→ 列出未验证笔记
5. 协作与版本管理
-
main
分支:稳定架构 -
dev
分支:日常更新 -
PR 模板(防止分类错误)
- 父节点路径:
- 是否已验证:
- 链接或参考资料:
6. 双模式切换
-
入门模式:只看顶层目录(1~7 类)
-
进阶模式:图谱视图(Obsidian Graph)+ 过滤器
-
tag:#spec → 查看规范节点
-
status:verified → 生产可用节点
-
红色 draft / 绿色 verified / 灰色 待分类
-
7. 例行维护
-
周一(10 min):清空
99-收集箱-Inbox
-
周三(20 min):随机补充验证记录
-
周五(15 min):跑
tagStats.js
检查分类 -
月末(1 h):
-
跑
buildIndex.js
更新目录 -
跑
checkDrafts.js
补齐状态
-
8. 参考 Demo
文件路径
02-语义-Semantics/
└─ 03-类型-Types/
└─ 10-可选链-optional-chaining.md
笔记内容
---
title: 可选链 Optional Chaining
tags: [Types, ECMAScript]
create: 2025-08-12
source: https://tc39.es/ecma262/#sec-optional-chaining-operator
status: verified
---
## 1 原始出处(溯源)
- TC39 Stage 4 提案
- 链接:https://tc39.es/ecma262/#sec-optional-chaining-operator
## 2 核心结论
> 可选链 `?.` 避免访问 null/undefined 时抛错。
## 3 最小可运行示例
```js
const obj = { a: { b: 1 } };
console.log(obj.a?.b); // 1
console.log(obj.x?.y); // undefined
4 应用场景
-
API 返回数据不确定时
-
深层嵌套对象访问
5 知识体系定位
-
父节点:03-类型-Types
-
潜在子节点:可选链结合空值合并
6 验证记录
-
环境:Node.js 16
-
结果:与规范一致
7 扩展阅读
8 个人备注
- 面试常考,尤其结合空值合并
---
这样你在 **Obsidian** 打开,就能看到清晰的目录(中英双语),笔记模板一致,脚本可自动化生成,维护成本低。
---
我可以帮你直接写好 **autoNote.js、buildIndex.js、tagStats.js、checkDrafts.js** 这 4 个脚本,让你马上用起来。
要我直接给你脚本成品吗?这样你复制进 `scripts/` 就能跑了。