Buying for a Team? Gift This Course
Wishlisted Wishlist

Please confirm that you want to add Learn To Program JavaScript (in ten easy steps) to your Wishlist.

Add to Wishlist

Learn To Program JavaScript (in ten easy steps)

The simplest way to learn to program JavaScript - the language of the web.
4.8 (84 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,681 students enrolled
Last updated 1/2017
$10 $75 87% off
1 day left at this price!
30-Day Money-Back Guarantee
  • 4 hours on-demand video
  • 1 Article
  • 2 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Have a coupon?
What Will I Learn?
You will learn to program JavaScript from the ground up
Source code archive contains all sample programs
Course eBook has ten chapters - one for each of the ten steps
View Curriculum
  • You will need a web browser and a code editor (suitable free software is suggested in the course)

Learn To Program JavaScript (in ten easy steps) is suitable for beginner programmers. Step-by-step it explains how to write JavaScript code to run in a web browser on Windows, Linux or Mac OS X.

JavaScript is the language of the web. If you need to program web sites to run on desktop computers or mobile devices, you have to know JavaScript.

This course explains all you need to know in order to write JavaScript and make sense of other people’s JavaScript code. Every step of the way you can follow along with ready-to-run code in in short, easy-to-understand JavaScript programs.

You will begin by learning the core features of programming – variables, functions and data types. You will move on to learn about specific capabilities of JavaScript – how to use it to automate web pages, hide email addresses, swap stylesheets interactively; how to load XML data to create so-called AJAX applications, how to animate images and use some of the drawing capabilities of HTML5.

The sample projects are all provided ready for you to download, run and modify. The course also includes a course eBook, The Little Book Of JavaScript, that provides even more information on the topics being discussed.

The course instructor,Huw Collingbourne, is Director of Technology with SapphireSteel Software, a company that specialises in Visual Studio development tools for professional programmers. Founder of Bitwise Courses  – producers of multimedia instruction courses – Huw is one of the top-selling programming instructors on Udemy,.

Learn To Program JavaScript (in ten easy steps) is the fastest and simplest way to learn to program web pages like a pro.

Who is the target audience?
  • Newcomers to JavaScript programming
  • Beginner web developers
  • Anyone who needs to learn JavaScript quickly
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 44 Lectures Collapse All 44 Lectures 05:19:25
Step One
6 Lectures 19:07

What sort of language is JavaScript? What is it used for and what, if anything, is its connection with Java?

Preview 05:22

Here I explain how the core topic of this course, JavaScript, fits in with the other elements of a web page such as HTML and CSS. I also give an overview of the other components of this course – the source code archive and the eBook.
Preview 04:18

Download and unzip the source code archive.

Source Code Archive

The Little Book of JavaScript is the "course text". In ten chapters it covers the same topics described in the ten steps of the online course and the ten folders of the source code archive. You can read the text online or download it for viewing offline.
The Little Book Of JavaScript
73 pages

You will need a code editor to write JavaScript and one or more web browsers to run and debug those scripts. Here I summarise the basic toolset you will need both to create and debug JavaScript programs. 
Preview 05:33

By long tradition, the first thing programmers like to do when learning a new language is write a program that says “Hello world”. Find out how to do that in JavaScript.

Hello world!
Step Two
3 Lectures 20:35

Just about every real-world program uses variables to store and reuse bits of data. Here I explain how to declare and use variables in JavaScript.


Here we’ll find out how JavaScript can get user input from a web page and assign that input to a variable in order to interact with the user. 

User Interaction

Step Three
3 Lectures 20:57

Functions are named subroutines. In this lesson, I explain how to write functions that can call one another and which may, optionally, return values to the code that called them.


Values can be passed into functions by sending one or more arguments that match the parameters declared in the function header. This video explains this.

Parameters and arguments

‘Scope’ describes the visibility of items such as variables within your program. Here I explain the difference between local and global scope in JavaScript.

Step Four
4 Lectures 23:45

You will use strings all the time in your JavaScript code. Here we look at how  to use strings to display text and write HTML and how to embed special characters in strings.


String objects come with lots of built-in methods that can do everything from changing the case of a string to replacing part of a string. Here I look at a few string methods and find out a simple way of hiding your email address from Spam-gathering programs.

String Methods

You will often need to perform conditional tests in your programs and take different actions according to whether or not the tests evaluate to true. Here I explain how to do ‘if’ and ‘else’ tests and how to do multiple tests using ‘case’ statements.

Tests and Conditions

JavaScript provides a number of operators that can be used when testing values. Here I explain how these can be used and why some operators are stricter than others.

Comparison Operators
Step Five
6 Lectures 24:27

Learn how to use the add, subtract, multiply, divide and modulus operators to perform calculations or even create an interactive calculator on a web page.

Mathematical Operators

What is the result of this calculation? 

10 * 5 - 2 / 3 

Is it 16? 10? Or some complicated floating-point number? In this lesson I show how the ‘precedence’ of mathematical operators affect the result of calculations and I explain a way of simplifying this.

Operator Precedence

You can add or subtract 1 from a numeric variable such as x using the ++ and -- operators. But what is the difference between x++ and ++x? This lesson explains.
++ and --

Using operators such as +=, -= and *= you can perform arithmetic and assign the results to a variable in a single step. 
Shorthand Operators

Let’s assume that you ask a user to enter a number and they enter the text “fifty”. That’s a string, not a number and you obviously can’t do a calculation with it! So how to you deal with this kind of problem? One way is to use something called NaN


You want to write some code that executes only when both A and B are true or when either X or Y is true. You need to use the logical ‘and’ (&&) and ‘or’ (||) operators. This video explains how these work.

Logical Operators
Step Six
4 Lectures 29:45
You will often need to perform actions repeatedly in your JavaScript programs. If you want to execute some code a fixed number of times, a ‘for’ loop may be what you need.
for loops

You can hide sensitive data such as email links by processing strings using ‘for’ loops. Here I explain how to convert characters to numbers and back again using their numeric or ASCII codes.
Hide an email address using a 'for' loop

Arrays allow you to store sequential collections of items. Here I explain how to iterate through an array using various looping constructs to insert and retrieve items at specific array indexes.
Arrays and loops

Here I put a for loop to good use in a program that changes the appearance of a web page by loading up alternative stylesheets. But I also have a problem – my code doesn’t work with all browsers. I explain how to diagnose and fix this sort of error.
Switching stylesheets
Step Seven
2 Lectures 20:37
JavaScript is an Object Oriented Programming (OOP) language. But if you are used to other OOP languages you may be in for a surprise since JavaScript has no classes. This lessons explains JavaScript objects.

JavaScript objects contain collections of properties with associated values. This type of collection is called an ‘associative array’ and it is similar to a ‘hash’ or a ‘dictionary’ in other programming languages. That is the subject of this lesson.
Associative Arrays
Step Eight
6 Lectures 32:37
JavaScript running on your ‘local’ computer can request data stored on a ‘remote’ web site. The secret of this is AJAX - Asynchronous JavaScript and XML. This lesson explains the basics of AJAX.
AJAX - an introduction

Here I explain the essential features of making a request to a remote server and using the returned data to display text in a web page.
A simple AJAX example

In this lesson I explain how to load data from an XML file similar to the files used to create RSS feeds. You could use this technique to display your own RSS feeds on a web page.
Processing XML files and RSS Feeds

Here I take a look at how to create a list of nodes from XML data in which each node can provide access to its ‘child’ nodes. 
Lists and how to handle them

Occasionally an unexpected error may occur in your JavaScript programs. You may be able to recover from some errors by ‘catching’ them, as this video explains.

Not all web browsers support all the same features of JavaScript. For that reason, JavaScript authors often query the browser to try to identify which is being used. Here I look at some of the information that web browsers make available.
Browser Information
Step Nine
6 Lectures 36:47
In this step we’ll be adding and animating text and graphics to web pages. Here I introduce a useful method that lets us add new HTML elements to modify a web page using JavaScript.
How to create HTML elements in JavaScript

In this example I show how to create a simple animated text tickertape that repeatedly displays one or more messages on a web page.
Create an animated text tickertape

You can create simple animations just by swapping one image for another using JavaScript. In this lesson I show how to create ‘multi-frame’ animations and change their speed.
Image Animation

One of the most familiar uses of JavaScript is to create rollover buttons that swap images when the mouse hovers over them. Here I look at simple and animated rollover buttons and menus.
Rollover Buttons and Menus

It’s easy to animate images by changing their positions and sizes. Here are a few simple examples. 
Moving Image Effects

You can draw and animate lines and geometrical shapes using an HTML5 Canvas. This lesson explains how to get started.
Drawing on the Canvas
Step Ten
4 Lectures 17:47
There are lots of free JavaScript code libraries that you can simply download and use in your own web pages. Here I look at one of them.
Free Code Libraries

jQuery is one of the most widely used JavaScript frameworks. In this lesson I explain how to use jQuery in your own code and provide some simple examples.
jQuery – a brief introduction

There are special-purpose IDEs and editors for all kinds of HTML and JavaScript projects. Here I look at several, ranging from JavaScript code editors for programmers to visual IDEs for artists and animators.
IDEs and Editors revisited...

So now we’ve come to the end of this course. I really appreciate the time and effort that you have put into studying all ten steps. If you want to find out about all my latest courses and special offers, please visit the Bitwise Courses web site at  and follow us on Twitter:
And Finally...
About the Instructor
4.2 Average rating
2,172 Reviews
49,975 Students
11 Courses
Director of Technology, SapphireSteel Software

Huw Collingbourne is the technology director at SapphireSteel Software, developers of the “Sapphire” Ruby IDE for Visual Studio and the “Amethyst” IDE for the Adobe Flash Platform. He is author of The Book Of Ruby from No Starch Press. He runs Bitwise Courses and teaches courses on a range of programming topics.

Huw has been a programmer for more than 30 years. He is a well-known technology writer in the UK. For over ten years he wrote the Delphi and Java programming column for PC Plus Magazine. He has also written numerous opinion and programming columns (including tutorials on C#, Smalltalk, ActionScript and Ruby) for a number of computer magazines, such as Computer Shopper, Flash & Flex Developer’s Magazine, PC Pro, and PC Plus. He is the author of the free ebook The Little Book of Ruby and is the editor of the online computing magazine Bitwise.

In the 1980s he was a pop music journalist and interviewed most of the New Romantic stars, such as Duran Duran, Spandau Ballet, Adam Ant, Boy George, and Depeche Mode. He is now writing a series of New Romantic murder mysteries.

At various times Huw has been a magazine publisher, editor, and TV broadcaster. He has an MA in English from the University of Cambridge and holds a 2nd dan black belt in aikido, a martial art which he teaches in North Devon, UK. The aikido comes in useful when trying (usually unsuccessfully) to keep his Pyrenean Mountain Dogs under some semblance of control.

Report Abuse