JavaScript 学什么?
一、开发环境搭建
掌握浏览器控制台运行环境的基本使用方法。
掌握 VS Code 插件(ESLint、Prettier、Live Server)配置,建立保存即刷新、自动格式化的开发习惯。
了解 JavaScript 的历史、应用场景及与 ECMAScript 的关系。
二、变量、数据类型与运算符
掌握 let、const、var 的区别。
掌握原始类型(Number、String、Boolean、Null、Undefined、Symbol、BigInt)与引用类型(Object)的存储方式差异。
掌握模板字符串、字符串常用方法(slice、indexOf、includes、replaceAll)。
掌握
==与===的转换规则,理解 Truthy/Falsy 值清单。掌握解构赋值(数组、对象、嵌套、重命名、默认值)在日常编码中的高频场景。
三、函数与作用域
掌握函数声明、函数表达式、箭头函数三者的 this 绑定差异。
掌握默认参数、剩余参数、展开运算符在函数签名与调用中的用法。
掌握闭包的经典模式:计数器、缓存、事件委托中的数据隐藏。
理解词法作用域与执行上下文,能手绘变量查找的“作用域链”示意图。
四、对象、数组与 JSON
掌握数组的 8 个高频迭代方法(map、filter、find、forEach、some、every、reduce、sort)及返回新数组原则。
掌握对象字面量增强(属性简写、方法简写、计算属性名)。
掌握深拷贝与浅拷贝的区别,并能手写一个递归深拷贝函数。
理解 JSON.stringify 的 3 个参数与常见“循环引用”报错解决方案。
了解 Map、Set、WeakMap、WeakSet 的适用场景及与对象的性能对比。
五、DOM 编程
掌握 querySelector、querySelectorAll、closest、matches 的用法与性能差异。
掌握事件委托的编码模式:利用 e.target 实现动态列表监听。
掌握 Element.classList、dataset、style 的读写方式及切换主题色实战。
理解事件流的捕获、目标、冒泡三阶段,能解释 stopPropagation 与 preventDefault 的适用时机。
了解 ResizeObserver、IntersectionObserver 等现代异步观察器 API。
更多内容参考《DOM 编程》知识库。
六、异步编程
掌握 Promise 的三种状态及链式调用。
掌握 async/await 的错误捕获套路:try/catch + 循环 + 并发控制。
理解单线程、调用栈、任务队列(宏任务/微任务)的基本模型。
理解 Fetch API 与 XMLHttpRequest 的差异,能封装一个带超时、重试、取消的请求函数。
了解事件循环可视化工具(loupe、event-loop-ticks)辅助调试。
七、ES6+ 语法糖与模块化
掌握 let/const、箭头函数、模板字符串、默认导入导出(import/export)的快速迁移技巧。
掌握 Class 语法糖:constructor、静态属性、私有字段 (#)、继承 extends。
掌握常用 Array/Object 静态方法(Array.from、Object.assign、Object.entries)。
掌握可选链 (?.) 与空值合并 (??) 如何简化防御性编程。
理解 Promise、Symbol、Iterator、for…of 的内部协议,能自定义可迭代对象。
八、错误处理与调试技巧
掌握 try/catch/finally 与 throw 自定义错误类(继承 Error)。
掌握 console 家族:table、time、trace、group、assert 的使用方法。
理解 window.onerror、unhandledrejection 的全局错误捕获方案。
九、综合实战:开发一个待办事项(TodoMVC)
掌握 MVC/MVVM 思想:用纯 JavaScript 实现数据层、视图层、控制层分离。
掌握防抖(debounce)与节流(throttle)在搜索框中的性能优化。
掌握 LocalStorage 的增删改查及 JSON 序列化边界。
JavaScript 最初被设计为让网页更生动的脚本语言,可以直接嵌入 HTML 中并由浏览器自动执行。它是一门动态类型、具有丰富特性的编程语言,支持函数式和面向对象等多种编程范式。JavaScript 不仅能在浏览器中操作 DOM、响应用户交互、发送网络请求,还可通过 Node.js 等环境扩展到服务器端开发。它与 HTML/CSS 深度集成,被所有主流浏览器默认支持,是实现现代网页交互的核心技术。随着语言的持续发展,新的语法和 API 不断加入,使其在前端、后端乃至移动端都拥有广泛应用。