JavaScript Foundations



In this course, you will learn how to create code that can make basic decisions; employ efficient debugging techniques with browser developer tools; access and modify HTML elements and CSS styles on a page; and use JavaScript to communicate with a server. This course will also introduce you to the rapidly growing world of JavaScript libraries, and you’ll get a chance to create a simple application with Backbone.js.


Lesson One: JavaScript Basics

This lesson focuses on the bare basics of what you need to know about JavaScript: working with variables, types of data in JavaScript, how to handle text and numbers, and even how to let your code make its own decisions. We’ll also talk about tools you need to get started, and how to begin debugging your code.

Lesson Two: More JavaScript Basics

In this lesson, you’ll learn about functions, a couple of new data types as well as arrays, and objects. We also get into events and advanced debugging. By the end, you’ll be able to create small programs with more complex behavior that can react to user input.

Lesson Three: The DOM (Document Object Model)

The Document Object Model, or DOM, is a model of an HTML document, where each HTML element is represented by a JavaScript object. In this lesson, we’re going to show you how to use JavaScript to manipulate the DOM.

Lesson Four: Creating Elements, Fragments, And Templates

In this lesson, we’ll take manipulation of the DOM a step further-creating brand new HTML elements, adding them to a page, removing existing elements from a page, and even moving elements around to rearrange a page. We’ll also look at building and deploying document fragments.

Lesson Five: Server Communication

So far, we’ve been developing all our projects in a sandbox. In this lesson, we’ll move beyond the sandbox and begin communicating with the outside world by sending data to and receiving data from servers on the Web.

Lesson Six: Advanced Concepts

In this lesson, we wrap up by covering the subject of scope, going into a few basic concepts of application design, and then finally, looking at some application frameworks and doing a bit of hands-on work with one of those frameworks, Backbone JS.


The ability to code HTML/CSS by hand
An understanding of device differences: You should at least be familiar with the differences between various systems, devices, and web browsers.
Familiarity with jQuery, but this is not strictly required.

Have you tried this resource? Help someone out by sharing your thoughts!

Write a review

More Ways to Learn JavaScript

6th - College | Free
Advanced JS: Games & Visualizations
Khan Academy
Advanced JS: Games & Visualizations
High School - College | Free
Intro to JS: Drawing & Animation
Khan Academy
Intro to JS: Drawing & Animation
High School - College | Free