JavaScript

A simple programming language to make web pages interactive

Beginner
42 hrs 33 mins
82 chapters

Overview

JavaScript is a client-side scripting language used together with HTML and CSS to build dynamic and interactive webpages. It completes the front-end development triad together with HTML and CSS and has a high demand out in the market. It has got a large supportive community with the help of which you can solve nearly any problem you face while developing programs in it.

JavaScript is a fairly easy-to-learn language as you can see from the statistics (on the right or below) and is a good choice for beginners for their first programming language as it can give them the feel of a programming flavor and yet not make things overwhelming. However its measure of ease is relative to other programming languages out there like C, C++, Java etc. These languages are quite complicated to understand and write programs in and have a low-level nature as compared to JavaScript's high-level one. So in short if you've learnt, or tried to learn any of these languages then learning JavaScript will be a piece of cake for you!

For those of you who haven't learnt any of these, the good news is that even for you JavaScript will be a piece of cake because of this course!

Prerequisites

  • HTML

    HTML is the entry point of running JavaScript programs on the web, hence knowledge of HTML is required.

  • CSS

    Although we won't be using much CSS in this course, it still is an integral technology for building webpages and is likewise required as well.

Learning outcomes

  1. JavaScript basics where to write JavaScript code, how to write it, how to use the console etc.
  2. How to work with numbers, strings (text), and booleans
  3. How to solve conditional problems using if..else statements and iterational problems using for and while loops
  4. How to work with data structures like arrays and objects
  5. How to work with functions and complex topics like closures and recursions
  6. How to work with objects and the importance of Object-Oriented Programming in general terms
  7. How to employ constructors and prototypes to emulate the behavior of OOP classes and sub classes
  8. How to work with HTML DOM and the Events API in building page interactivity and dynamicality by querying HTML and CSS and responding to user actions like clicking a button
  9. How to use JavaScript predefined functions to calculate dimensions of elements, viewports, including or excluding padding, borders, margins, outlines etc.
  10. How to work with HTTP related stuff using JavaScript, like cookies.

Table of contents

  1. In this unit, we'll get introduced to the JavaScript language. We'll get familiar with such basic stuff as variables, comments, data types, control flow, functions, and so on. This unit will provide us with a rock-solid JavaScript foundation.

  2. Handling errors is an integral part of all modern-day computer programs. In this unit, we'll see how to effectively handle errors in JavaScript using the try...catch set of statements.

  3. In this unit, we'll learn how to interact with the HTML content of a web page. By far, the most common thing done using JavaScript is DOM mutation and that's what we'll get to explore throughout this unit. We'll see how to access HTML elements, and then modify their properties, add/delete attributes, remove them completely from the markup, and so on and so forth.

  4. Drag-and-drop is common in native desktop applications. But JavaScript is by no means behind. This unit aims at teaching us how to set up a simple drag-and-drop program using minimal JavaScript. We'll see, in detail, things such as draggable elements, drag data and what exactly are dropzones. Finally, we'll cover some drop effects before ending with the final unit quiz.

  5. With the rise of touch-based devices, it's difficult to ignore the importance of touch events in JavaScript. In this unit, we'll start by discovering the history of touch events, followed by understanding how to set up touch event handlers in applications. Finally, we'll explore the two most important interfaces when working with touch events — TouchList and Touch.

  6. In this unit, we'll cover some of the miscellaneous concepts of JavaScript that couldn't be grouped under one single category. These include APIs such as Date, History, Location, and some global functions such as setTimeout() and setInterval().

FAQs

Frankly speaking, JavaScript is not at all difficult to learn, but that's not to say that it doesn't have its complexities and surprises. Fortunately, we've got you covered — this course aims at making you an expert in JavaScript, one of the most celebrated languages of the era.

While you can get comfortable with the basics in less than a week, learning JavaScript comprehensively can take a long time. How much? Well, giving a precise quantitative measurement isn't obviously possible, but it can be somewhere in between 2 - 6 months. It's a huge language with tons and tons of APIs to master, all of which require a sufficient time span to get used to.

Absolutely yes. You'll acquire logical reasoning and programming skills through this course, both of which go hand-in-hand once you start building complex web applications in JavaScript.

If you're having a hard time understanding a given concept in the course, feel free to reach out to me at bilal@codeguage.com, describing the issue you're facing. I'll try my level best to help you out.

The courses on Codeguage are released while they are still under construction so that learners can get early previews. As I continuously work on adding more and more content to the courses, if a given topic isn't covered today, there's a high chance that it's already under way and will show up very soon. You can follow Codeguage on Twitter to be updated with all the latest content releases.

Write to me at bilal@codeguage.com.

Let's get learning!

Start learning

Recent courses

Pre-release

Node.js

A runtime environment executing JavaScript outside the browser