学 JavaScript: 编程课程
学 JavaScript: 编程课程 — —一门随身携带、配备真实控制台的 JavaScript 课程
学 JavaScript: 编程课程 是一款免费的 iOS 和 Android JavaScript 课程,包含 59 门短课程和 200 节课,内容从第一个变量一直讲到事件循环。JavaScript 直接在手机上运行,因此内置的 JS 编辑器和控制台能够即时响应;而每日练习——预测输出、寻找 bug、每周一道 kata——则让你保持编程手感。
- 价格
- 免费,可升级 Pro
- 平台
- iOS 和 Android
- 语言
- 22
- 年龄分级
- 4+
- 版本
- 82.6.1
- 需要
- iOS 15.1 或更高版本
- App Store
- 5.0 ★ (1)


引擎在手机上运行,因此答案会立即返回。
JS Lab 会在设备上执行 JavaScript。将一行代码输入控制台,立即查看结果;或者让应用运行代码片段,展示“预测输出”卡片的真实结果,而不是解释它大概会如何运行。
这是什么
学 JavaScript: 编程课程 是一款免费的 iOS 和 Android 应用,循序渐进地教授 JavaScript:包含 59 门课程和 200 节课,按 A1 到 C1 分级,涵盖值与作用域、函数与 this、DOM、Fetch API、promises 和 async/await、闭包、类、生成器以及事件循环。应用将课程与可在手机上运行的 JS 编辑器、JavaScript 控制台和每日练习结合起来,并提供 AI Mentor,在概念或错误消息令人费解时为你提供帮助。
应用内
界面展示





课程
JavaScript 课程涵盖哪些内容
应用自有课程列表中的 59 门课程和 200 节课,内容从第一个变量开始,涵盖浏览器和异步代码,直至高级语言特性。
欢迎学习 JavaScript
从概念和环境设置开始学习 JS,接着学习值和类型、变量与作用域、控制流,并初步了解数组和对象。
日常 JavaScript
模板字面量、可选链和空值合并、解构、rest 和 spread、高阶数组方法、JSON 以及错误处理。
DOM 与事件
DOM 选择与遍历、元素操作、事件处理、事件委托与传播,以及表单和输入。
网络与存储
Fetch API、使用 localStorage 和 sessionStorage 进行 Web 存储、FormData 和文件处理,以及使用 IndexedDB 进行客户端存储。
异步 JavaScript
回调、promises 和微任务、实际应用中的 async/await、计时器与调度,以及深入了解事件循环。
函数、闭包与类
函数与 this、闭包与模块模式、柯里化与组合、类与继承,以及高级 this 绑定。
高级语言特性
迭代器与生成器、Maps 和 Sets、Proxy 和 Reflect、符号、正则表达式以及不可变性。
模块、Workers 与性能
ES 模块与 CommonJS 的对比、Node 与浏览器之间的差异、Web Workers、service workers、性能与内存,以及测试。
工作原理
一次 JavaScript 学习过程
每次学习都将一节短课与可运行的内容结合起来,最后以快速检查收尾,让讲解与练习在同一次学习中完成。
阅读短课
用几分钟学完一节课:简明易懂的讲解、几个问题和一项小型代码任务。第一门课程免费,即使网络连接较弱,课程也能正常使用。
在 JS Lab 中运行代码
在控制台中输入代码,预测每日卡片的输出并观看引擎展示真实答案;或者根据测试用例表修复出错的程序。
检查结果并深入学习
通过测验或编程任务完成学习;当异步代码令人困惑时,逐步查看事件循环;如果某些内容始终无法理解,就向 AI Mentor 提问。
包含内容
应用包含的内容
59
门课程,A1 至 C1
200 节课,内容从值和类型、DOM 事件、fetch、promises 与 async/await,一直延伸到闭包、Proxy 与 Reflect、正则表达式和性能。
设备端
JS 编辑器和控制台
在内置编辑器中编写并运行 JavaScript,在控制台中尝试单行代码,还可以保存程序以便稍后打开。编辑器中的 AI Tools 会检查程序并建议可直接应用的修复方案。
每日
JS Lab 练习
预测输出、根据测试用例寻找 bug、每周一道免费的 kata、事件循环分步练习、DOM 竞技场、五道限时面试题,以及根据你自己的错误构建的复习卡组。
60
编程任务
三个难度等级的短练习,内容从 Hello World 和模板字面量,到 FizzBuzz、闭包、Merge Sort、Quicksort,以及在图上执行 BFS 或 DFS。
20
引导式项目
一步一步构建 Order Totals、Word Frequency Counter、Async Data Pipeline 和 Mini Event Bus 等程序;每一步运行时都会接受检查。
AI
AI Mentor
当某个概念或错误让你无法继续时,可以用自然语言提问。免费用户每天可提问几次;Pro 用户不受每日限制。
背景
为什么仅靠阅读很难学会 JavaScript?你需要练习什么?
JavaScript 的行为往往读起来容易、预测起来困难:变量可以保存一个函数,this 会随函数的调用方式而改变,而代码也不一定按照书写顺序运行。阅读解释当然有帮助,但只有真正运行代码、看到输出与你的猜测不一致时,这些意外情况才会牢牢记住。因此,学习 JavaScript 最有效的方式,是随手有一个控制台,并养成在运行代码片段前先预测其输出的习惯。
作用域与闭包变量存在的位置
函数会记住它被编写位置周围的变量,即使那段代码已经执行完毕也是如此。这个概念解释了私有状态、模块模式以及一些经典的面试问题。
this 的值最常见的难点
与大多数语言不同,this 指向什么取决于函数的调用方式,而不是它的定义位置。箭头函数、call、apply 和 bind 都会改变结果,而混淆它们是产生 bug 的常见原因。
事件循环异步代码为何令人意外
JavaScript 一次只执行一件事,然后返回处理等待中的任务队列。promise 回调会在设置为零毫秒的计时器之前运行,这就是为什么输出顺序有时看起来不对——直到你在脑中构建起调用栈、微任务和任务的运行图景。
浏览器与 Node同一种语言,两种归属
两者使用的核心语言相同,但浏览器增加了 DOM、事件和 fetch,而 Node 增加了文件和进程。弄清哪些功能属于哪一方,可以避免遇到大量令人困惑的错误消息。
是否适合
适合哪些人——不适合哪些人
如果你符合以下情况,就很适合
- 从未编程过,希望从第一个变量开始学习 JavaScript
- 喜欢运行一行代码并查看输出结果,以此加深理解
- 希望每天练习几分钟即可完成,而不是进行长时间学习
- 正在准备 JavaScript 面试,希望获得带答案的问题和限时练习
- 希望理解异步代码和事件循环,而不只是照搬代码模式
如果你符合以下情况,这不是适合你的工具
- 需要构建完整的多文件 Web 项目——这类任务仍然更适合使用笔记本电脑和真正的编辑器
- 希望所有内容都免费:第一门课程、一个项目和两项任务免费,Pro 可解锁其余内容
- 不喜欢免费应用中的广告——免费版本会显示广告,Pro 可移除广告
- 已经每天编写 JavaScript,希望获得的是参考资料,而不是课程
问题
常见问题
有没有适合在手机上学习的 JavaScript 课程?
学 JavaScript: 编程课程 是一门专为手机打造的 JavaScript 课程:包含 59 门短课程和 200 节课、可在设备上运行代码的内置 JS 编辑器和控制台,以及每日练习卡片。课程将简短讲解与问题和小型代码任务结合起来,让你每次学习结束时都能运行一段真正的代码。
我可以用这个应用在手机上运行 JavaScript 代码吗?
可以。JS Lab 会直接在手机上运行 JavaScript,因此控制台会立即返回结果,编辑器也能运行完整程序。你可以保存程序,之后再次打开;编辑器的 AI Tools 还能检查程序并建议修复方案,让你直接应用修复。
对于完全没有基础的初学者来说,学习 JavaScript 编程最快的方法是什么?
进行简短而规律的练习,并亲自运行代码。学 JavaScript: 编程课程 从值和变量开始,通过每日目标和连续学习天数帮助你保持规律练习,还提供控制台供你尝试。每天的预测输出卡片会培养你在运行代码前先推理代码的习惯。
什么是 JS Lab?
JS Lab 是 学 JavaScript: 编程课程 中用于每日练习的区域。这里包含控制台、预测输出卡片、根据测试用例检查结果的找 bug 练习、每周 kata、事件循环步进工具、DOM 竞技场、五道限时面试题,以及根据你自己犯过的错误生成的回顾卡组。
这个应用会讲解 async/await 和事件循环吗?
会。课程涵盖回调、promises 和微任务、实际应用中的 async/await,以及深入了解事件循环。此外,事件循环工具可以让你逐步查看调用栈、微任务和任务,一次执行一个步骤,从而了解为什么输出会按这样的顺序出现。
学 JavaScript: 编程课程 能帮助准备 JavaScript 面试吗?
它包含 50 道带答案的 JavaScript 面试题,以及 JS Lab 中包含五道限时题目的 Interview 模式。闭包、this、promises 和事件循环——这些面试经常考查的主题——都有对应的专门课程。
学 JavaScript: 编程课程 免费吗?
该应用可以免费下载。第一门课程、第一个引导式项目、两项编程任务、JS Lab 每日练习和每日 AI Mentor 使用额度均免费,免费版本会显示广告。Pro 可解锁所有课程、项目和任务、无限使用 AI Mentor 以及证书考试,并移除广告。
有证书吗?
有。在 学 JavaScript: 编程课程 中通过最终考试即可获得结业证书。证书会记录你完成的学习内容;它不是受认可的资格证书,因此最好与那些你能够讲解清楚的项目一起展示。
它也会教授浏览器相关内容吗,还是只讲语言本身?
会。除了语言本身,课程还涵盖 DOM 选择与操作、事件与事件委托、表单、Fetch API、localStorage、IndexedDB、Canvas、WebSockets 和 Web Workers。另有专门课程比较 Node 与浏览器,帮助你了解哪些功能适用于哪一方。
它支持哪些平台和语言?
学 JavaScript: 编程课程 可在 iPhone 和 iPad 上通过 App Store 运行,也可在 Android 上通过 Google Play 运行,支持 22 种语言。在 App Store 上的评级为 4+。
更多 CoddyKit 产品
可在 iOS 和 Android 上使用。