Books & Videos

Table of Contents

Chapter: Idiomatic JavaScript

The Course Overview

02m 57s

Using White Space for Readability

05m 19s

Declaring Variables

07m 52s

Declaring Complex Data Types and Functions

04m 21s

OOP Naming Conventions

04m 13s

Creating a Global Namespace

04m 45s

Constants (and Pseudo constants)

03m 48s

Smart Coercion of Data Fields

04m 23s

Chapter: Cross-browser Development

Targeting at JavaScript Versions or Features

04m 53s

Creating an onload Method That Always Works

03m 38s

OnReady – Our First Cross-browser Script

06m 50s

Using Modernizr to Detect Features

04m 22s

Chapter: Cross-browser DOM Manipulation

Building a Conditional Logic Flow

04m 51s

Selecting DOM Elements Natively in HTML5

06m 25s

Creating a Cross-browser Script Loader

05m 36s

Using Sizzle to Select DOM Elements

07m 13s

Chapter: Creating a JavaScript Library

Defining a Namespace

05m 43s

Creating Private Variables in JavaScript

05m 45s

The JavaScript Module Design Pattern

06m 30s

Version Controlling Our Library

07m 8s

Building Out Our Library

11m 26s

Chapter: Expanding Out with Design Patterns

Thinking with Interfaces

07m 21s

Creating an Adapter Design Pattern

05m 30s

Building a jQuery Adapter

06m 41s

Adding a Functionality Method

03m 46s

Mimicking the jQuery Wrapper

09m 6s

Chapter: Exploring the Facade Design Pattern

Introducing the Facade Design Pattern

03m 56s

Creating a Facade Creator

04m 34s

Creating a New Global Function Through the Facade

03m 59s

Creating an Advanced Facade Pattern

05m 18s

Chapter: Working with Time in JavaScript

Creating a Singleton

11m 32s

Building the Constructor for Our Ticker

10m 36s

Connecting Time with Our Ticker

11m 9s

Processing Interval groups

09m 46s

Exposing Our Ticker to the World

02m 46s

Chapter: Dispatching Events in JavaScript

Creating an Event Dispatcher

13m 34s

Integrating the Event Dispatcher into Our Library

08m 11s

Removing Events from the Dispatcher

05m 20s

Building Test Units

08m 48s