JavaScript Courses & Tutorials | Codecademy

About JavaScript

The JavaScript programming language is fun and flexible. It’s one of the core technologies of web development and can be used on both the front-end and the back-end.

JavaScript courses

Level

Type

Learn all the skills you need to land a new career in tech.

Learn all the concepts you need to gain a new technical skill.

Prepare and practice for top industry certifications.

Learn concepts used for specific languages or technologies.

Average time to complete

Average based on combined completion rates — individual pacing in lessons, projects, and quizzes may vary.

  • Learn how to control the flow of a program and use JavaScript to power dynamic behaviors on websites.

  • Learn the Document Object Model, the interface between JavaScript and HTML elements, and combine HTML, CSS, and JavaScript into exciting interactive sites!

  • Learn how to use JavaScript — a powerful and flexible programming language for adding website interactivity.

  • Build powerful interactive applications with React, a popular JavaScript library.

  • In this React course, you’ll build powerful interactive applications with one of the most popular JavaScript libraries.

  • Define and reuse logic with functions and scope variables for effective data access.

  • Build mobile apps with TypeScript and React, using Expo and React Native

  • Front-end engineers work closely with designers to make websites beautiful, functional, and fast.

    • Includes 34 Courses
    • With Professional Certification

  • Explore the building blocks of back-end web architecture and server-side components.

  • Learn about the HTML5 game development framework that makes writing browser-based games a breeze.

  • Back-end developers deal with the hidden processes that run behind the scenes, building APIs and databases that power the front-end.

    • Includes 41 Courses
    • With Professional Certification

  • A full-stack engineer can get a project done from start to finish, back-end to front-end.

    • Includes 51 Courses
    • With Professional Certification

  • Learn TypeScript, a superset of JavaScript that adds types to make the language scale!

  • Make your Phaser game stand out visually using animations and camera effects.

  • Take your JavaScript knowledge to the next level by learning how to use advanced functions to create more efficient programs.

  • Learn about the different components of a web application's back-end and explore the Node.js JavaScript runtime environment.

  • Create and manipulate arrays and execute efficient repetitions using loops to develop meaningful programs.

  • Build an HTTP server using Node.js to facilitate the connection between a client and a server.

  • Elevate web apps using Next.js. Gain skills in server-side rendering, dynamic routing, and data fetching for powerful applications.

  • Discover the power of Next.js, a React framework for efficient, scalable web development and learn how to create web applications with Next.js.

  • It’s easy to get lost in the flow of a good game. But behind every power-up and boss battle is simple code that brings the game to life.

    • Includes 8 Courses
  • Learn how to make back-end apps and APIs using the popular Express.js framework

  • Learn to build Angular apps by creating components, enabling component interaction, implementing routing, handling user inputs, and managing state with signals.

  • Get an introduction to Node.js—a JavaScript runtime environment typically used to build back-end apps.

  • Learn how to build back-end web APIs using Express.js, Node.js, SQL, and a Node.js-SQLite database library.

    • Includes 8 Courses
  • Learn how JavaScript works under the hood and level up your code composition with various design patterns.

  • Apply the JavaScript syntax to TypeScript’s type system to give your code more structure.

  • Build real-time applications like chatrooms and multiplayer games with WebSockets!

  • Learn to build front-end web apps with JavaScript and React.

    • Includes 9 Courses
  • Learn the core concepts of Angular, including the basics of data binding and directives, in this introductory course.

  • Learn advanced React techniques and topics including custom hooks, error boundaries, the Context API, and optimization.

  • Learn key interview preparation skills and practice algorithmic problem-solving in JavaScript

  • Learn how to make front-end web apps with ease using Vue.js, an increasingly popular JavaScript front-end framework.

  • Model real-world elements using Objects, a data structure that stores information and functions.

  • Learn how to join the front-end and the back-end by creating REST APIs and using the MVC architecture.

  • Learn how to build Angular applications using AI tools to generate code, evaluate patterns, and develop real-world web apps.

  • Simplify the process of looping over arrays with iterator methods and learn how to build abstractions in JavaScript.

  • Begin testing quickly with Jest and simplify component testing with React Testing Library.

  • Write functions in TypeScript to declare expected types of function parameters and return values.

  • Learn how Angular components interact and about the power of observables while working with data streams.

  • From beginners to experienced web developers, Wix offers a wide range of solutions to quickly create a website that you can proudly share.

  • Learn how to build advanced web applications with React and Redux.

    • Includes 6 Courses
  • Implement the Redux state management into your application using core methods of the Redux API.

  • In this course, you'll learn how to implement User Authentication and Authorization in an Express web application.

  • Create generative visualizations and interactive experiences with p5.js, a popular JavaScript library for creative coding.

  • Ready to learn VR in VR? Dive into A-Frame and learn how to build virtual reality experiences in the browser.

  • Asynchronously request data using the async/await syntax to dynamically use data from APIs.

  • Advance your CSS styling strategies with CSS-in-JS, a popular technique that allows programmers to write CSS styling in JavaScript.

  • Enhance your React applications with Redux, a popular state-management library.

  • Create efficient asynchronous programs using Promises and the async/await syntax.

  • Start designing more complex systems with techniques such as design patterns, SOLID principles, and UML.

  • Learn how to publish a website to the Internet with Jekyll, Amazon Web Services (AWS), and GitHub Pages.

  • Leverage hooks, a powerful feature of function components, to use states without creating classes.

  • Learn the basics of jQuery, a JavaScript library that allows you to easily add dynamic behavior to static web pages.

  • Generate visualizations and interactive experiences with p5.js, a popular JavaScript library for creative coding.

  • Learn how to use the popular React Router library to easily create navigation components.

  • Learn how to interact with a SQL database from within your JavaScript programs!

  • Get an introduction to adding dynamic behaviors with the jQuery JavaScript Library.

  • Learn about the computer science concepts of data structures and algorithms and build implementations from scratch in modern JavaScript.

    • Includes 8 Courses
  • Learn how to define property names, represent complex object shapes, and write more organized code in TypeScript.

  • Easily produce multiple objects with the same property using classes and export and import modules.

  • Learn how to easily build single-page web applications using this popular JavaScript framework.

  • Dive into intermediate TypeScript concepts including class types, type narrowing, and generics.

  • Learn the basics of test-driven development and write unit tests in JavaScript with the Mocha library.

  • Manage states using programming patterns for mixing components with and without states.

  • Add and manipulate media assets, such as images and videos, in your p5.js sketch.

  • Refactor your code with Redux Toolkit, an essential package for any Redux application.

  • Build better and more maintainable web applications through test-driven development.

  • Learn how to create more secure applications by predicting, handling, and debugging errors with JavaScript.

  • Level up your Typescript skills by learning how to combine individual types into flexible combinations with union types.

  • Learn to create semantic templates using a popular and lightweight templating engine, Handlebars!

  • Learn how to create bar charts with D3, the popular interactive data visualization library.

  • Discover the three stages that comprise the lifecycle phases of React components.

  • Gain insights into the runtime behavior of the TypeScript code by narrowing down union types.

  • Use your knowledge of JavaScript and Velo to create a full-stack application.

  • Learn how to apply types to more complex data structures like arrays and objects in TypeScript.

  • Unlock the power of TypeScript generics. Learn how to use generics with classes, type parameter defaults and constraints, and the `keyof` type parameter.

  • Take your React skills to the next level by learning how to apply styles and use forms to get user input.

  • Make your Phaser game feel more like the real world by incorporating the rules of physics.

  • Learn how to protect Node.js Applications from SQL Injection, CSRF, & XSS Attacks, JavaScript safety practices, and what to do when something goes wrong.

  • Get up and running with a Wix account and quickly create a website that you can share.

  • Learn about the HTML5 game development framework that makes writing browser-based games a breeze.

  • Leverage the OpenAI API within your JavaScript code. Learn to customize prompts and hyperparameters for optimal output.

  • Select HTML elements efficiently using jQuery methods to traverse the DOM.

  • Learn fundamental JavaScript syntax, including conditionals, functions, and scope, to work with Velo to further customize your Wix site.

  • Integrate JavaScript asynchronous actions with Velo to create a backend.

  • Use test-driven development to create a JavaScript server using the Express framework.

  • Trigger jQuery effects when users interact with elements on the web page using event handlers.

  • Modify the CSS properties of an HTML element using jQuery style methods.

  • Start creating your own professional web applications using build tools such as Webpack, esbuild, Parcel, and Vite.

  • Learn how to set up TypeScript for use in VSCode on your local computer — including global and project-specific installations.

  • Learn advanced techniques to narrow complex types in TypeScript. Discover TypeScript’s power inference through type guards and type narrowing.

  • Learn how to create the model layer of a web application using Mongoose and TDD.

  • Do you have the basics of React down and feel ready to take the next step? Advance your React skills with React Router v5.

  • Master TypeScript types in object-oriented patterns. Learn how to utilize keywords to control when class properties and methods are used.

  • Learn to implement routing in Angular using Angular Router, covering route definitions, configuration, links, nested routes, redirects, and parameters.

  • Learn how to manage asynchronous operations and create Redux middleware and thunks to handle asynchronous actions.

  • Learn to create, inject, and provide Angular services using @Injectable and leverage injector hierarchy for modular, efficient apps.

  • Work with JavaScript collection types, arrays and objects and incorporate these skills into Velo.

  • Add interactivity to your p5.js sketch with mouse and keyboard functions.

Related resources