Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Noble Desktop

JavaScript Programming Bootcamp (Live Online)

via Noble Desktop

Overview

Learn JavaScript programming essentials for creating web applications, including variables, conditional logic, functions, DOM manipulation, arrays, loops, async events, APIs, OOP, and 3D libraries. This hands-on course aims to prepare students for work on practical web design projects.

Syllabus

Variables

  • Strings, numbers, booleans; var vs let
  • NaN, Number() method, null, error messages
  • Nested quotes string concatenation / Interpolation
  • Math object, math operators, random numbers

Conditional Logic

  • If / else if / else; block scoped variables
  • Nested logic; truthy / falsey values
  • Ternary expressions; switch-case-break
  • Date-Object; the “new” keyword

Functions and the DOM (Document Object Model)

  • Function parameters / arguments; return values
  • DOM (Document Object Model) events
  • DOM Project: Log In form
  • DOM Project: Restaurant Bill Calculator form
  • DOM Project: Signup form
  • Hoisting; function expressions; anonymous functions
  • DOM Project: Apartment Rent Estimator form
  • Keyboard events; setting CSS with JS
  • DOM Project: Mystery Number Guessing Game

Arrays and Objects

  • Arrays: item index; nested arrays
  • Objects: the “const” keyword; properties; nested objects
  • Array Methods: push(), pop(), sort(), splice(), et al
  • String methods: replace(), includes(), charAt(), et al

Loops

  • For Loops; iterating (looping) arrays
  • Looping Arrays of Objects
  • While / Do While Loops, Nested Loops
  • DOM Project: Making deck of cards & dealing hand
  • Passing arrays to functions
  • Classic Coding Interview Questions / Challenges

Creating DOM Elements Dynamically

  • Creating elements: createElement(), appendChild()
  • DOM Project: Chinese Zodiac Animals; Audio()
  • DOM Project: Password Generator
  • DOM Project: Lottery Ticket Generator
  • Dynamically adding properties to Arrays of objects
  • DOM Project: Sort Movies by Title, Year and Duration

Array Callbacks & Arrow Functions

  • Callbacks: Functions that take functions as arguments
  • Array Callback Methods: map(), filter(); method chaining
  • Arrow => Functions
  • forEach() method, instead of a for loop
  • reduce() method

Timer for Calling Functions and Animation

  • setInterval() runs a callback function repeatedly on a delay
  • setTimeout() runs a callback function once only on a delay
  • DOM Project: Update Digital Clock every Second
  • DOM Project: Coffee Site with Animated “Clock-Guy” Hands
  • DOM Project: Deal Hands of Poker & Blackjack on Timer

Asynchronous Events & APIs

  • Synchronous vs Asynchronous Events
  • JSON (JavaScript Object Notation); parse & stringify
  • DOM Project: Lyric Search API; Promises
  • DOM Project: Cryptocurrency Prices API; Async-Await
  • Adding a Search Box to Website to Filter API Request

OOP (Object Oriented Programming)

  • Function Objects; Prototype
  • “Class” keyword; constructor() method; private vs public
  • DOM Project: OOP Memory Game, Pt 1
  • DOM Project: OOP Memory Game, Pt 2
  • Modules: Exporting and Importing Classes

JavaScript 3D Libraries

  • D3: For 3D Data Visualization, Pt 1
  • D3: For 3D Data Visualization, Pt 2
  • 3D in the browser with ThreeJS, Pt 1
  • 3D in the browser with ThreeJS, Pt 2
  • 3D in the browser with ThreeJS, Pt 3

Taught by

Dan Rodney, Brian McClain, Scott Carson, and Colin Jaffe

Reviews

Start your review of JavaScript Programming Bootcamp (Live Online)

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.