tags:bok 状态、重要性
# inbox
- [[JavaScript 在前端开发中能够解决那些问题]]
- [[JS 变量、对象、函数、类的关系]]
- [[面向对象编程OOP]]
# todo
这个 bok 领域我的待学习待实践内容
# WHY
解决什么问题?
# WHAT(树干)
原理
# HOW(树枝和树杈)
### JavaScript 知识体系大纲
#### **1. 基础概念**
1.1 **变量**
- `var`
- `let`
- `const`
- 变量提升
1.2 **数据类型**
- 基本类型 (Primitive Types)
- `string`
- `number`
- `boolean`
- `null`
- `undefined`
- `symbol`
- `bigint`
- 引用类型 (Reference Types)
- 对象
- 数组
- 函数
- 类型转换
- 隐式类型转换
- 显式类型转换
1.3 **作用域与闭包**
- 全局作用域
- 函数作用域
- 块级作用域
- 闭包 (Closures)
- 词法环境
- 应用场景
---
#### **2. 核心特性**
2.1 **函数**
- 函数声明
- 函数表达式
- 箭头函数
- 默认参数
- 高阶函数 (Higher-Order Functions)
- 回调函数 (Callback Functions)
2.2 **对象**
- 属性与方法
- 属性访问 (`dot notation` 和 `bracket notation`)
- 对象解构与展开
- 对象的深浅拷贝
- 对象继承与原型链
2.3 **类**
- 定义类 (`class` 和 `constructor`)
- 静态方法 (Static Methods)
- 继承 (`extends`)
- 实例方法与静态方法的区别
2.4 **原型 (Prototypes)**
- 原型链
- `Object.create`
- `__proto__`
- 原型继承
---
#### **3. 浏览器环境**
3.1 **DOM 操作**
- 选择元素
- `getElementById`
- `querySelector`
- `querySelectorAll`
- 修改元素内容和属性
- 创建与删除节点
- 操作样式与类名
3.2 **事件处理**
- 事件监听 (`addEventListener`)
- 事件传播机制
- 捕获阶段
- 冒泡阶段
- 事件委托
---
#### **4. 异步编程**
4.1 **定时器**
- `setTimeout`
- `setInterval`
4.2 **Promise**
- 基本用法
- 链式调用
- 错误处理 (`catch`)
4.3 **async/await**
- 定义与用法
- 异步函数的错误处理
4.4 **事件循环 (Event Loop)**
- 宏任务与微任务
- `setTimeout` vs `Promise`
---
#### **5. 模块化**
5.1 **ES6 模块**
- `import` 和 `export`
- 默认导出与命名导出
5.2 **CommonJS**
- `require` 和 `module.exports`
5.3 **AMD**
- `define` 和 `require`
---
#### **6. 错误处理**
6.1 **基础错误处理**
- `try...catch`
- `throw`
- 错误对象 (`Error`, `TypeError`, `ReferenceError` 等)
6.2 **调试工具**
- 浏览器调试工具
- `console.log` 系列
- 设置断点与性能分析
---
#### **7. 性能优化**
7.1 **代码优化**
- 减少 DOM 操作
- 事件节流与防抖
- 异步加载资源 (`async` 和 `defer`)
7.2 **内存管理**
- 垃圾回收机制
- 避免内存泄漏
- 全局变量滥用
- 未清除的定时器或事件监听
---
#### **8. 进阶主题**
8.1 **设计模式**
- 单例模式
- 工厂模式
- 发布-订阅模式
- MVC/MVVM
8.2 **元编程**
- Proxy 和 Reflect
- Symbol 的高级用法
8.3 **ECMAScript 标准**
- ES5 特性
- ES6 新特性
- 解构赋值
- 模板字符串
- 箭头函数
- 类
- 模块化
- 最新更新的特性
---
#### **9. 常用工具与环境**
9.1 **Node.js**
- 核心模块
- 文件系统操作
- 包管理器 (npm/yarn)
9.2 **前端框架**
- React
- Vue
- Angular
9.3 **打包工具**
- Webpack
- Rollup
- Vite
# HOW GOOD
big idea
能够解决哪些问题
# ref.
## 📗 书籍
### 入门小册子 intro
- 参考资料的参考资料,他人总结的书单、GitHub学习资料集合
- Google前十页、维基百科的文献链接
- 百科全书:wikipedia(navbox)、DK等百科全书类的知识汇编、综合
- 小册子、入门或图解类书籍(搜索引擎+“入门”)
- epic
- 导论教科书的目录
### 了解学科大图景 big picture
### 经典大部头 textbook
- 理论认知
- 历史认知
- 实践认知
### 相关论文
### 知识视频、网络课程
- YouTube(同时设置浏览器文件夹)
- 课程
- cousera
- mimo
- codecademy
- 网站、播客、网页
- 纪录片
### 🧩 碎片化信息(同样需要深度加工,走完学习闭环)
- [费曼日报](https://daily.candobear.com/)
- 正规出版的报刊、杂志文章,严肃规范的科普类文章
- GitHub 项目(star收藏)
- 知乎专栏
- 个人网站、博客、网页、X
- RSS订阅
### 🤔 案例研究
### 👨🏫 多请教大活人(与人沟通非常重要)
# archive
---