0Pricing
JavaScript Academy icon

JavaScript Academy

JAVASCRIPTWebFrontendBackendBeginnerScripting

通过在 JavaScript Academy 学习 JavaScript,释放网络交互的潜力。

🤖 AI 驱动📚 59 门课程👥 10万+ 学习者⭐ 4.9 分
课程概览

JavaScript:让网络运转的语言

JavaScript 是唯一在每个浏览器中原生运行的编程语言——有了 Node.js,它也能在服务器上运行。它控制从按钮点击和表单验证到实时数据流和离线可用网络应用的一切。本轨道从值和类型开始,一直到事件循环、Web Workers 和 Service Workers,为你构建对这门语言的严谨而完整的理解。

你将学到什么

你将从变量、作用域、控制流和核心数据类型开始,然后进展到 DOM 操作、事件委托和用于 HTTP 请求的 Fetch API。在轨道的更深入部分,你将学习闭包和模块模式、函数式编程模式、柯里化和函数组合,以及异步 JavaScript——回调、Promises、微任务和 async/await。涵盖的浏览器 API 包括 localStorage、IndexedDB、Canvas API、WebSockets、Web Components、Intersection Observer 和 Streams API。高级课程深入讲解事件循环、Proxy 和 Reflect、Web Workers、Service Workers 和离线缓存、迭代器和生成器,以及性能和内存管理。

学习路径

共有六十八门活跃课程,从 A1 到 C1。A1 模块涵盖基础知识:值和类型、变量和作用域、数组和对象,以及控制流。A2 在此基础上扩展,包含模板字符串、可选链、函数和 this、错误处理和 Date 对象。B1 介绍浏览器环境——DOM 遍历、事件处理、Fetch API、解构、高阶数组方法和类。B2 范围更广:函数式模式、异步模式、Maps 和 Sets、Regex、Web Components、模块、打包和测试基础。C1 模块以 事件循环深度解析、Proxy 和 Reflect、Web Workers 和多线程、Service Workers 和离线缓存、迭代器和生成器以及 防御性 JS 作为结尾。

工作原理

每门课程分为短小精悍的课时,你在内置代码编辑器中完成,获得实时反馈。遇到困难时,AI 导师随时可用,学习进度结构化设计确保每个概念只在其先决条件扎实后才出现。

开始学习 →

你的学习方式

🎯
互动课程
实时反馈的动手编程练习
🤖
AI 导师
遇到困难时立即获得 AI 帮助
💻
内置编辑器
直接在浏览器中编写并运行代码
🏆
证书
完成课程后获得证书
课程

59 门课程

JavaScript Academy 学习路径中的所有课程。

01

欢迎学习 JavaScript

A13 节课

了解 JavaScript 是什么、它为何是全球最流行的编程语言,以及您将能够用它构建哪些令人惊叹的作品。

02

JavaScript 入门

A11 节课PRO

通过《JavaScript 初学者入门》课程开启您的编程之旅。本综合课程将介绍 JavaScript 语言及其基本结构,展示它为何成为全球最受欢迎的软件技术之一。您将探索 JavaScript 的多种应用场景,从网页和移动应用,到数据库系统以及 NodeJS 等服务器端环境。了…

03

JS 入门:概念与设置

A13 节课PRO

正确开始学习 JavaScript:了解 JS 是什么、引擎如何运行它、它在哪里运行(浏览器与 Node),以及如何设置并执行您的第一个脚本。

04

值与类型基础

A13 节课PRO

掌握 JS 的值与类型:原始值与对象、 typeof ,以及核心原始类型(数字、大整数、字符串、布尔值、null、undefined、符号)。

05

变量与作用域

A13 节课PRO

理解变量声明( let 、 const 和旧式的 var )、块级作用域与函数作用域,以及更安全编程所需的暂时性死区。

06

控制流基础

A13 节课PRO

掌握核心控制流:使用 if/else 、 else if 和 switch 编写清晰、适合初学者的代码。

07

数组与对象(入门)

A12 节课PRO

操作数组和对象:创建、读取、更新、删除;使用 for…of/forEach 遍历;安全访问属性。

08

可选链与空值合并

A24 节课PRO

使用可选链和空值合并编写简洁且安全处理空值的 JavaScript

09

模板字面量与标签模板

A24 节课PRO

构建动态字符串并创建功能强大的标签模板函数

10

Date 对象与格式化

A24 节课PRO

在 JavaScript 中处理日期和时间,并将其格式化后呈现给用户

11

控制台、调试与 DevTools

A24 节课PRO

使用控制台方法、断点和浏览器 DevTools 诊断并修复 JavaScript 问题

12

函数与 This(入门)

A23 节课PRO

学习函数声明与函数表达式的区别、箭头函数基础,以及每种形式适合编写清晰易懂代码的场景。

13

字符串、数字与日期

A23 节课PRO

操作字符串、数字和日期:模板字面量、常用字符串方法、安全舍入,以及 Date 的基础用法。

14

错误处理基础

A22 节课PRO

使用 try/catch/finally 安全处理错误, throw 有意义的消息,并创建小型自定义错误以实现清晰的控制流。

15

DOM 选择与遍历

B14 节课PRO

使用现代 DOM 选择和遍历 API 查找并浏览网页中的元素

16

操作 DOM 元素

B14 节课PRO

使用 JavaScript 动态创建、更新和删除页面元素及其内容

17

事件处理

B14 节课PRO

使用事件监听器、事件对象和事件控制来响应用户交互

18

表单与输入处理

B14 节课PRO

使用 JavaScript 读取、验证并响应 HTML 表单中的用户输入

19

类型强制转换与相等规则

B14 节课PRO

掌握 JavaScript 的类型强制转换规则、真值判断,以及 == 与 === 之间的区别

20

事件委托与传播

B14 节课PRO

利用捕获阶段、冒泡阶段和事件委托,高效处理大规模事件

21

Fetch API 与 HTTP 请求

B14 节课PRO

使用 Fetch API 和 Promise 与服务器通信,并正确处理错误

22

Web Storage:localStorage 与 sessionStorage

B14 节课PRO

使用 Web Storage API 在浏览器中持久化数据,并了解其限制

23

FormData 与文件处理

B14 节课PRO

在浏览器中处理文件、Blob 和多部分表单数据,以实现上传和下载

24

解构与剩余/展开

B12 节课PRO

掌握数组和对象解构,以便更简洁地完成赋值、设置默认值和重命名,并学习交换值等小型模式。

25

高阶函数与数组方法

B12 节课PRO

使用高阶数组方法编写清晰、适合初学者的代码:先从 map 和 filter 开始,再学习如何安全地组合它们。

26

对象与原型(入门)

B12 节课PRO

理解原型链、自有属性与继承属性,使用 Object.create 创建简单原型,并学习基础属性描述符。

27

计时器与调度

B13 节课PRO

安全使用计时器: setTimeout 、 setInterval ,以及能够考虑时间漂移的调度方式,让应用运行更流畅。

28

JSON 与序列化

B13 节课PRO

安全处理 JSON:使用 JSON.stringify / JSON.parse 、可选的 replacer / reviver ,以及适合初学者的安全提示。

29

类与继承

B13 节课PRO

安全使用现代类:公共字段、 私有 # 字段 和 静态 成员。通过简单、适合初学者的示例进行学习。

30

Symbol 及其用途

B24 节课PRO

使用 Symbol 和众所周知的 Symbol 创建唯一标识符并自定义对象行为

31

函数式编程模式

B24 节课PRO

使用纯函数、不可变性和声明式数据转换,编写更简洁的 JavaScript

32

闭包与模块模式

B24 节课PRO

使用闭包封装状态,构建模块化且具有私有性的 JavaScript 代码

33

柯里化与函数组合

B24 节课PRO

通过函数柯里化和函数组合,构建灵活且可复用的逻辑

34

不可变性与对象冻结

B24 节课PRO

使用 Object.freeze 和不可变更新模式,保护数据免受意外修改

35

回调、Promise 与微任务

B23 节课PRO

逐步理解事件循环:同步代码、任务队列(setTimeout)、微任务队列(Promise/queueMicrotask),以及简单的执行顺序规则。

36

实践 async/await

B23 节课PRO

编写并使用 async/await :创建异步函数,使用 try/catch 处理错误,并在顺序执行与并行执行之间做出选择。

37

Map、Set 与弱集合

B23 节课PRO

学习使用 Map 和 Set 清晰地处理数据:键到值的查找、唯一性,以及日常开发中的小型模式。

38

正则表达式与文本处理

B23 节课PRO

学习适合初学者的正则表达式:创建模式、测试字符串、使用锚点,并应用有用的标志完成简单文本任务。

39

Web Components 与自定义元素

B24 节课PRO

使用自定义元素和 Shadow DOM 构建可复用且封装良好的 UI 组件

40

Intersection Observer API

B24 节课PRO

检测元素何时进入视口,从而实现延迟加载、无限滚动和动画

41

IndexedDB 客户端存储

B24 节课PRO

使用事务型 IndexedDB 数据库在浏览器中存储大量结构化数据

42

Canvas API

B24 节课PRO

使用 HTML canvas 及其 2D 上下文以编程方式绘制图形、形状和图像

43

浏览器中的 WebSockets

B24 节课PRO

使用 WebSockets 构建浏览器与服务器之间的实时双向通信

44

拖放 API

B24 节课PRO

使用原生 HTML 拖放 API 实现直观的拖放交互

45

使用 Intl 实现国际化

B24 节课PRO

使用内置 Intl API,为任意区域设置格式化数字、日期、货币和文本

46

模块:ESM 与 CommonJS

B23 节课PRO

理解 JavaScript 模块:ESM 的导入与导出、默认导出与具名导出,以及快速了解 CommonJS 互操作。循序渐进,适合初学者。

47

打包与脚本

B23 节课PRO

学习 package.json 基础:脚本、依赖与 devDependencies 的区别,以及简单的语义化版本范围。适合初学者,注重实践。

48

测试与质量(轻量级)

B23 节课PRO

培养轻量级测试思维:微小断言、安排–执行–断言、失败→通过→重构,以及无需复杂工具的实用技巧。

49

迷你项目(仅使用语言本身)

B23 节课PRO

不使用框架,构建可运行的微型 JS 项目。先从 表达式求值器 开始,再完成日志分析器和 Promise 池。

50

Node 与浏览器的差异

B23 节课PRO

识别浏览器与 Node 之间的关键差异:全局对象、 fetch 的可用性,以及文件和网络接口的访问方式。学习简单检查与安全模式。

51

深入理解事件循环

C14 节课PRO

了解 JavaScript 如何借助调用栈、任务队列和微任务调度工作

52

Proxy 与 Reflect

C14 节课PRO

使用 Proxy 和 Reflect API 拦截并自定义对象的基本操作

53

Web Workers 与多线程

C14 节课PRO

使用 Web Worker 将繁重计算移出主线程,保持界面响应流畅

54

Service Worker 与离线缓存

C14 节课PRO

使用 Service Worker 和 Cache API,让 Web 应用运行更快并支持离线使用

55

Streams API

C14 节课PRO

使用可读流、可写流和转换流增量处理数据,提高处理效率

56

迭代器与生成器

C13 节课PRO

理解 JavaScript 的迭代协议:数据如何成为 可迭代对象 , 迭代器 如何工作,以及如何使用 for...of 、展开语法和 Array.from。

57

高级 This 与绑定

C13 节课PRO

深入理解 this :词法 this 与动态 this、箭头函数,以及实用的绑定模式。循序渐进,适合初学者。

58

性能与内存

C13 节课PRO

学习简单但影响显著的性能习惯:基础的 Big-O 思维、热路径与冷路径,以及适合初学者的数据结构小技巧。

59

防御式 JS

C13 节课PRO

面向初学者学习防御式 JavaScript:验证输入,在需要时转义输出,并坚持默认安全的小型模式。

常见问题

常见问题解答

JavaScript Academy 课程免费吗?

免费。你可以免费开始 JavaScript Academy 课程并完成它的所有互动课程。可选的 PRO 订阅解锁高级 AI 工具和可分享的证书。

学习 JAVASCRIPT 需要有先前的经验吗?

不需要。课程从基础开始,逐步进阶到更高难度的主题,所以即使你没有任何 JAVASCRIPT 基础也可以开始。

我在 CoddyKit 上怎样学习 JAVASCRIPT?

学以致用。简洁的互动课程将清晰的讲解与实时动手编程练习结合,24/7 AI 导师在你遇到困难时提供个性化帮助。

完成 JavaScript Academy 后能获得证书吗?

可以。PRO 学员可以参加考试,获得 JavaScript Academy 课程的可分享的完成证书,其中包含可验证的代码。

我能在手机上学习 JAVASCRIPT 吗?

可以。CoddyKit 支持网页版和原生 iOS、Android 应用,你可以在任何设备上学习 JAVASCRIPT,进度会自动同步。

立即开始 JavaScript Academy

加入数千名学习者,通过 AI 驱动的课程掌握编程。

免费开始 →浏览所有课程