# Getting Started with JavaScript

## JavaScript is how you build interactivity on the web. Take this class to learn how to work with the DOM, create Objects, make AJAX calls, and much more!

- \
\
Lesson #1\
\
Introduction to JavaScript\
\
This lesson is the start of the Javascript class. Get setup and ready to start writing code for the web!](/content/classes/javascript/introduction/index.html)

- \
\
Lesson #2\
\
Adding JavaScript to your Page\
\
Learn how to add JavaScript to your page using the three available ways, external, internal and inline.](/content/classes/javascript/adding-javascript-external-internal-inline/index.html)

- \
\
Lesson #3\
\
Variables and Constants\
\
Variables and constants hold data. Learn how to declare, initialize, and reassign them in JavaScript.](/content/classes/javascript/variables-constants/index.html)

- \
\
Lesson #4\
\
Primitive Data Types\
\
Primitive data types are the fundamental building blocks of data. This lesson will go over all the primitive data types supported in JavaScript.](/content/classes/javascript/primitive-data-types/index.html)

- \
\
Lesson #5\
\
Math\
\
Learn about how to do arithmetic and work with the properties and methods provided in the Math library!](/content/classes/javascript/math/index.html)

- \
\
Lesson #6\
\
Ifs, Else Ifs, Switch\
\
Logic and conditionals are a fundamental part of JavaScript and is how your program or script can make decisions.](/content/classes/javascript/logic-conditionals/index.html)

- \
\
Lesson #7\
\
Loops\
\
Learn how to shorten your code by utilizing loops like for loops, while loops, do while loops, and for in loops.](/content/classes/javascript/loops/index.html)

- \
\
Lesson #8\
\
Functions\
\
Functions in JavaScript are a great way to group together lines of code that aim to do a single task and make them reusable.](/content/classes/javascript/functions/index.html)

- \
\
Lesson #9\
\
Arrays\
\
Arrays are a list of data in JavaScript. In this lesson, learn how to create, add elements to, remove elements from, and iterate over arrays.](/content/classes/javascript/arrays/index.html)

- \
\
Lesson #10\
\
Objects, Properties and Methods\
\
Objects in JavaScript represent a collection of properties and methods that belong to the same entity.](/content/classes/javascript/objects/index.html)

- \
\
Lesson #11\
\
Classes\
\
Classes in JavaScript provide a blueprint for the creation of objects which helps organize our code and reduce complexity.](/content/classes/javascript/classes/index.html)

- \
\
Lesson #12\
\
Sets\
\
Sets in JavaScript are collections of elements that only allow unique values and ignores any duplicates.](/content/classes/javascript/sets/index.html)

- \
\
Lesson #13\
\
Maps\
\
Maps in JavaScript are collections of key-value pairs that adds new entries to the data structure like a dictionary.](/content/classes/javascript/maps/index.html)

- \
\
Lesson #14\
\
Timeouts and Intervals\
\
Timeouts and intervals are used when you want to control exactly when and how often a function is invoked.](/content/classes/javascript/timeouts-intervals/index.html)

- \
\
Lesson #15\
\
Dates\
\
Learn how to express dates and moments in time using JavaScript's built-in Date object and associated methods.](/content/classes/javascript/date/index.html)

- \
\
Lesson #16\
\
Document Object Model\
\
The Document Object Model describes how pages are structured and how you can alter, add, and remove elements.](/content/classes/javascript/document-object-model/index.html)

- \
\
Lesson #17\
\
Classes, Properties, Attributes, Styles\
\
Using JavaScript, you can manipulate, add, and remove an element's classes, properties, attributes and styles.](/content/classes/javascript/elements/index.html)

- \
\
Lesson #18\
\
Browser Events and Event Listeners\
\
Learn how to attach listeners to events triggered by the user and then execute code when those events occur.](/content/classes/javascript/events/index.html)

- \
\
Lesson #19\
\
JSON\
\
Learn all about JSON, the lightweight and readable data transfer format that powers the web you know today.](/content/classes/javascript/json/index.html)

- \
\
Lesson #20\
\
AJAX and Fetch\
\
Learn what AJAX and fetch is and how to use them to help deliver powerful and real-time experiences to your page.](/content/classes/javascript/ajax-fetch/index.html)

- \
\
Lesson #21\
\
Cookies\
\
Cookies let you store small pieces of information on the client. Learn how to create, edit, and delete them in this lesson.](/content/classes/javascript/cookies/index.html)

- \
\
Lesson #22\
\
Local Storage and Session Storage\
\
Local Storage and Session Storage let you store information across sessions or for just a single session.](/content/classes/javascript/localstorage-sessionstorage/index.html)

- \
\
Lesson #23\
\
Regular Expressions\
\
Learn how to use regular expressions search patterns in JavaScript to match text and do advanced find and replace operations.](/content/classes/javascript/regular-expressions/index.html)

- \
\
Lesson #24\
\
Errors, Exceptions, and Debugging\
\
Learn how to effectively and quickly deal with errors, exceptions, and bugs by properly debugging your code.](/content/classes/javascript/errors-exceptions-debugging/index.html)

- \
\
Lesson #25\
\
Callbacks, Promises, Async, Await\
\
Learn how to avoid callback hell in JavaScript by taking advantage of modern features like Promises, Async, and Await.](/content/classes/javascript/callbacks-promises-async-await/index.html)

- \
\
Lesson #26\
\
Conclusion and Wrap Up\
\
This lesson is the last lesson of the class on JavaScript and serves as the conclusion of the class.](/content/classes/javascript/conclusion/index.html)
