JavaScript 算法和数据结构

JavaScript 图标

HTML 和 CSS 控制页面的内容和样式,JavaScript 则用于页面交互。在 JavaScript 算法和数据结构认证中,你将学习 JavaScript 的基础知识,包括变量、 数组、 对象、 循环和函数。

打好基础之后,你将会通过创建算法来操作字符串、进行阶乘运算甚至计算国际空间站的轨道来应用这些知识。

Along the way, you'll also learn two important programming styles or paradigms: Object Oriented Programming (OOP) and Functional Programming (FP).

Note: Some browser extensions, such as ad-blockers and script-blockers can interfere with the tests. If you face issues, we recommend disabling extensions that modify or block the content of pages while taking the course.

课程

JavaScript 是一种用于网页交互的脚本语言。它和 HTML 和 CSS 一样,是网站的核心技术之一。所有现代浏览器都支持 JavaScript。

在这个课程中,你将学习JavaScript 中的基本编程概念。你将从数字和字符串等基本数据结构开始,然后学习使用数组、对象、函数、循环、if/else 语句等等。

ECMAScript(ES)是 JavaScript 的标准。因为所有主流浏览器都遵循此规范,所以 ECMAScript 和 JavaScript 是可以互换的。

Most of the JavaScript you've learned up to this point was in ES5 (ECMAScript 5), which was finalized in 2009. While you can still write programs in ES5, JavaScript is constantly evolving, and new features are released every year.

2015 年发布的 ES6 为该语言增加了许多强大的新功能。在这个课程中,你将学习这些新功能,包括 letconst、箭头函数、类、promises 和模块。

正则表达式,常常缩写为 “regex” 或 “regexp”,是帮助程序员匹配、搜索和替换文本的模式。正则表达式非常强大,但可能难以阅读,因为它们使用特殊字符来做更复杂更灵活的匹配。

在这个课程中,你将学习如何使用特殊字符、捕获组、正向或负向先行断言以及其他技巧来匹配你想要的文本。

调试是检查代码、发现并修复问题的过程。

代码中的问题通常有三种形式:1)语法错误导致程序停止运行, 2)代码无法执行或具有意外行为导致运行时错误,3)代码有语义(逻辑)错误,没有实现原来的意图。

在这个课程中,你将学习如何使用 JavaScript 控制台来调试程序,防止出现常见问题。

我们可以通过多种方式存储和访问数据。你已经知道数组和对象了,它们都是常见的 JavaScript 数据结构。

在基础数据结构课程中,你会更深入地了解数组和对象之间的差异,以及在不同情况下应该使用哪个。你还将学习到一些好用的 JS 方法,例如 splice(),以及使用 Object.keys() 来访问和操作数据。

算法是描述如何处理某个问题的一系列步骤。

To write an effective algorithm, it helps to break a problem down into smaller parts and think carefully about how to solve each part with code.

在这个课程中,你将通过编写算法来实现诸如转换温度、处理复杂的二维数组等,来学习算法思维的基础知识。

OOP, or Object Oriented Programming, is one of the major approaches to the software development process. In OOP, objects and classes organize code to describe things and what they can do.

In this course, you'll learn the basic principles of OOP in JavaScript, including the this keyword, prototype chains, constructors, and inheritance.

函数式编程是另一种软件开发方法。在函数式编程中,代码被组织成较小的基本的函数,可以结合起来构建复杂的程序。

在这个课程中,你将学习函数式编程的核心概念,包括纯函数、如何避免突变、如何使用 .map().filter() 等方法编写更整洁的代码。

现在你了解了算法的基础知识、面向对象编程以及函数式编程。接下来我们将进入中级算法挑战来测试你的技能。

是时候用上你新学到的 JavaScript 技能了!接下来的项目和前面的算法挑战很相近,但是难度会更高。

完成这 5 个 JavaScript 项目,以获得 JavaScript 算法和数据结构认证。

浏览我们的其他免费认证 (我们建议你按顺序学习)