学 JavaScript: 编程课程 应用图标

学 JavaScript: 编程课程

教育 · 免费 · iOS & Android · CoddyKit

学 JavaScript: 编程课程 — —一门随身携带、配备真实控制台的 JavaScript 课程

学 JavaScript: 编程课程 是一款免费的 iOS 和 Android JavaScript 课程,包含 59 门短课程和 200 节课,内容从第一个变量一直讲到事件循环。JavaScript 直接在手机上运行,因此内置的 JS 编辑器和控制台能够即时响应;而每日练习——预测输出、寻找 bug、每周一道 kata——则让你保持编程手感。

App Store — 免费下载Google Play — 免费下载
价格
免费,可升级 Pro
平台
iOS 和 Android
语言
22
年龄分级
4+
版本
82.6.1
需要
iOS 15.1 或更高版本
App Store
5.0 ★ (1)
JavaScript 学院主屏幕,包含学习路径卡片、每日目标和功能请求栏JavaScript 入门课程页面,显示总体进度和免费课程,旁边是 AI 工具面板
59门课程,A1 至 C1
设备端JS 编辑器和控制台
每日JS Lab 练习
引擎在手机上运行,因此答案会立即返回。

JS Lab 会在设备上执行 JavaScript。将一行代码输入控制台,立即查看结果;或者让应用运行代码片段,展示“预测输出”卡片的真实结果,而不是解释它大概会如何运行。

这是什么

学 JavaScript: 编程课程 是一款免费的 iOS 和 Android 应用,循序渐进地教授 JavaScript:包含 59 门课程和 200 节课,按 A1 到 C1 分级,涵盖值与作用域、函数与 this、DOM、Fetch API、promises 和 async/await、闭包、类、生成器以及事件循环。应用将课程与可在手机上运行的 JS 编辑器、JavaScript 控制台和每日练习结合起来,并提供 AI Mentor,在概念或错误消息令人费解时为你提供帮助。

应用内

界面展示

JavaScript 学院主屏幕,包含学习路径卡片、每日目标和功能请求栏
学习路径主屏幕会打开当前课程,并显示每日目标,让你只需轻点一下即可开始下一课。
JavaScript 入门课程页面,显示总体进度和免费课程,旁边是 AI 工具面板
课程页面每门课程都会显示总体进度以及哪些课程免费,侧边还会露出 AI 工具面板。
代码编辑器中用 JavaScript 编写了简短的 isPrime 函数,配有 AI 辅助工具栏
代码编辑器编辑器中包含一个小型 JavaScript 程序,以及提供代码库、代码生成和 AI 优化功能的工具栏。
AI 聊天页面,可帮助解释概念、提供提示、测试学习成果并制定学习路线图
AI 聊天AI 聊天可以帮助你解释关键概念、提供提示、进行测验并制定学习路线图。
浅色主题主屏幕,显示学习路径、每日目标和 Skill Hub
主屏幕,浅色主题这是同一主屏幕的浅色主题版本,每日目标下方显示 Skill Hub。

课程

JavaScript 课程涵盖哪些内容

应用自有课程列表中的 59 门课程和 200 节课,内容从第一个变量开始,涵盖浏览器和异步代码,直至高级语言特性。

  1. 欢迎学习 JavaScript

    从概念和环境设置开始学习 JS,接着学习值和类型、变量与作用域、控制流,并初步了解数组和对象。

  2. 日常 JavaScript

    模板字面量、可选链和空值合并、解构、rest 和 spread、高阶数组方法、JSON 以及错误处理。

  3. DOM 与事件

    DOM 选择与遍历、元素操作、事件处理、事件委托与传播,以及表单和输入。

  4. 网络与存储

    Fetch API、使用 localStorage 和 sessionStorage 进行 Web 存储、FormData 和文件处理,以及使用 IndexedDB 进行客户端存储。

  5. 异步 JavaScript

    回调、promises 和微任务、实际应用中的 async/await、计时器与调度,以及深入了解事件循环。

  6. 函数、闭包与类

    函数与 this、闭包与模块模式、柯里化与组合、类与继承,以及高级 this 绑定。

  7. 高级语言特性

    迭代器与生成器、Maps 和 Sets、Proxy 和 Reflect、符号、正则表达式以及不可变性。

  8. 模块、Workers 与性能

    ES 模块与 CommonJS 的对比、Node 与浏览器之间的差异、Web Workers、service workers、性能与内存,以及测试。

工作原理

一次 JavaScript 学习过程

每次学习都将一节短课与可运行的内容结合起来,最后以快速检查收尾,让讲解与练习在同一次学习中完成。

  1. 阅读短课

    用几分钟学完一节课:简明易懂的讲解、几个问题和一项小型代码任务。第一门课程免费,即使网络连接较弱,课程也能正常使用。

  2. 在 JS Lab 中运行代码

    在控制台中输入代码,预测每日卡片的输出并观看引擎展示真实答案;或者根据测试用例表修复出错的程序。

  3. 检查结果并深入学习

    通过测验或编程任务完成学习;当异步代码令人困惑时,逐步查看事件循环;如果某些内容始终无法理解,就向 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+。

开始使用

今天就写下你的第一行 JavaScript

在 iOS 和 Android 上免费开始,支持 22 种语言。

App Store — 免费下载Google Play — 免费下载
最近审核日期 · 由 CoddyKit 发布 · 隐私政策
可在 iOS 和 Android 上使用。