# JavaScript

## Introduction
1. [Welcome to JavaScript!](js-intro.md)
1. [Variables, Conditionals, and Iteration](variables-conditionals-iteration.md)
1. Introduction to JS
    - [Worksheet: Ruby to JS Practice](exercises/ruby-to-js-worksheet.md)
1. [Setup Linting](exercises/setup-linting.md)
1. [Functions in JavaScript](functions-intro.md)
1. [First-Class Functions](first-class-functions.md)
1. [Anonymous Functions and `forEach` Loops](anonymous-and-for-each.md)
1. [Functional Expressions vs. Function Declarations](functional-expressions.md)
1. Functions Exercises
    - [Worksheet: Functions Practice](exercises/functions-worksheet.md)
    - [Exercise: JS Calculator](exercises/calculator.md)
1. [Arrow Functions](arrow-functions.md)
1. [Worksheet: Summary & Wrap-up](exercises/summary-worksheet.md)

## Intro to Asynchronous Programming
1. [Introduction to Async](async-intro.md)
1. [Making `GET` Requests using `axios` in JavaScript](axios-get.md)
1. [Making `POST` Requests using `axios` in JavaScript](axios-post.md)

## JS in the Browser
1. [JS in the browser](js-in-the-browser.md)
1. [DOM Manipulation the Old Way: Live-code Notes](dom-manipulation-live-code-notes.md)

## Other
1. [Intro to Closures](intro-to-closures.md)
1. [Closures Continued](closures-continued.md)
1. [Hoisting](hoisting.md)
1. [Testing](testing.md)
1. [Prototypical JS Objects](js-objects.md)
    - [Worksheet: Classes Practice](exercises/objects-worksheet.md)
1. [Classes](classes.md)
    - [Worksheet: Classes Practice](exercises/classes-worksheet.md)
    - [Exercise: Fortune](exercises/fortune.md)
1. [Rest and Spread Operators](spread-and-rest-destructuring.md)
<!-- 1. [Underscore Templates](underscore-templates.md) -->

## Archived: jQuery
1. [jQuery Introduction](jquery-intro.md)
    - [Exercise: Review JS and jQuery in the browser](exercises/js-jquery-review.md)
1. [jQuery Events](jquery-events.md)

## Archived: AJAX
1. [AJAX Introduction](ajax-intro.md)
1. [AJAX Post](ajax-post.md)
