03 - Efficient Development & Debugging/001 Module Introduction.mp41.99MB
03 - Efficient Development & Debugging/002 Efficient Development & Debugging - An Overview.mp43.78MB
03 - Efficient Development & Debugging/003 Configuring the IDE Look & Feel.mp49.74MB
03 - Efficient Development & Debugging/004 Using Shortcuts.mp424.82MB
03 - Efficient Development & Debugging/005 Working with Auto-Completion & IDE Hints.mp415.95MB
03 - Efficient Development & Debugging/006 Installing IDE Extensions.mp49.28MB
03 - Efficient Development & Debugging/007 Tweaking Editor Settings.mp47.61MB
03 - Efficient Development & Debugging/008 Utilizing Different IDE Views.mp46.04MB
03 - Efficient Development & Debugging/009 Finding Help & Working with MDN.mp429.51MB
03 - Efficient Development & Debugging/011 How to google Correctly.mp47.16MB
03 - Efficient Development & Debugging/012 Debugging JavaScript - An Overview.mp47MB
03 - Efficient Development & Debugging/013 An Error Message! No Reason To Panic!.mp415.14MB
03 - Efficient Development & Debugging/014 Using console.log() to look into the Code.mp419.78MB
03 - Efficient Development & Debugging/015 Next-Level Debugging with the Chrome Devtools & Breakpoints.mp465.11MB
03 - Efficient Development & Debugging/016 Testing Code Changes Directly in the Devtools.mp411.66MB
03 - Efficient Development & Debugging/017 Debugging Code directly Inside VS Code.mp434.5MB
03 - Efficient Development & Debugging/018 Wrap Up.mp44.71MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/001 Module Introduction.mp42.82MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/002 Introducing if Statements & Boolean (Comparison) Operators.mp415.49MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/004 Using if Statements.mp432.36MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/005 Working with if, else and else-if.mp422.54MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/006 Beware When Comparing Objects & Arrays for Equality!.mp46.85MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/007 The Logical AND and OR Operators.mp428.44MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/008 Understanding Operator Precedence.mp427.51MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/009 Beyond true false Truthy and Falsy Values.mp428.66MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/011 Setting Up a Bigger Example Project (The Monster Killer).mp45.64MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/012 Adding an Attack Function.mp420.2MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/013 Using if Statements for Checking the Win-Condition.mp429.35MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/014 Adding More if Statements & A Strong Attack Functionality.mp448.74MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/015 Time for a Heal Player Functionality!.mp475.55MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/016 Controlling the Conditional Bonus Life (Without Boolean Operators!).mp422.21MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/017 Adding a Reset Game Functionality.mp423.18MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/018 Validating User Input.mp425.37MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/019 Utilizing Global Constants as Identifiers in Conditional Code.mp420.97MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/020 Adding a Conditional Battle Log.mp4109.19MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/021 Introducing the Ternary Operator.mp437.28MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/022 A Bit of Theory Statements vs Expressions.mp46.62MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/023 Logical Operator Tricks & Shorthands.mp430.47MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/025 Working with the switch-case Statement.mp432.98MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/026 Introducing Loops.mp49.17MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/027 The for Loop.mp440.21MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/028 The for-of Loop.mp422.63MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/029 The for-in Loop.mp429.39MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/030 The while & do-while Loops.mp430.23MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/031 Controlling Loops with break.mp464.89MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/032 Controlling Iterations with continue.mp46.48MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/033 More Control with Labeled Statements.mp424.55MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/034 Error Handling with try-catch - An Introduction.mp43.27MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/035 Throwing Custom Errors.mp422.01MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/036 Working with try-catch to Catch & Handle Errors.mp450.29MB
04 - Working with Control Structures (if Statements, Loops, Error Handling)/037 Wrap Up.mp420.01MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/001 Module Introduction.mp41.96MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/002 ES5 vs ES6+ (Next Gen JS) - Evolution of JavaScript.mp430.16MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/003 var vs let & const - Introducing Block Scope.mp433.21MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/004 Understanding Hoisting.mp48.81MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/005 Strict Mode & Writing Good Code.mp412.5MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/006 How Code is Parsed & Compiled.mp415.1MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/007 Inside the JavaScript Engine - How the Code Executes.mp442.98MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/009 Primitive vs Reference Values.mp456.49MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/010 Garbage Collection & Memory Management.mp456.19MB
05 - Behind the Scenes & The (Weird) Past (ES3, ES5) & Present (ES6+) of JavaScript/011 Wrap Up.mp47.9MB
06 - More on Functions/001 Module Introduction.mp41.83MB
06 - More on Functions/002 Recapping Functions Knowledge - What We Know Thus Far.mp42.65MB
06 - More on Functions/004 Functions vs Methods.mp422.17MB
06 - More on Functions/005 Functions are Objects!.mp47.36MB
06 - More on Functions/006 Function Expressions Storing Functions in Variables.mp412.46MB
06 - More on Functions/007 Function Expressions vs Function Declarations.mp45.48MB
06 - More on Functions/008 Anonymous Functions.mp416.87MB
06 - More on Functions/009 Working on the Project Adding User Choices to the Game.mp423.14MB
06 - More on Functions/010 Implementing the Core Game Logic.mp423.96MB
06 - More on Functions/011 Introducing Arrow Functions.mp456.4MB
06 - More on Functions/013 Outputting Messages to the User.mp419.8MB
06 - More on Functions/014 Default Arguments in Functions.mp437.67MB
06 - More on Functions/015 Introducing Rest Parameters (Rest Operator).mp427.84MB
06 - More on Functions/016 Creating Functions Inside of Functions.mp415.47MB
06 - More on Functions/017 Understanding Callback Functions.mp424.29MB
06 - More on Functions/018 Working with bind().mp428.78MB
06 - More on Functions/019 Adding bind() to the Calculator Project.mp428.07MB
06 - More on Functions/020 call() and apply().mp43.54MB
06 - More on Functions/021 Wrap Up.mp413.76MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/001 Module Introduction.mp42.16MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/002 What's the DOM.mp49.56MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/003 Document and Window Object.mp431.82MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/004 Understanding the DOM and how it's created.mp414.96MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/005 Nodes & Elements - Querying the DOM Overview.mp49.98MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/006 Selecting Elements in the DOM.mp425.91MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/008 Exploring and Changing DOM Properties.mp438.8MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/009 Attributes vs Properties.mp444.53MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/010 Selecting Multiple Elements & Summary.mp414.68MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/011 Traversing the DOM - Overview.mp48.87MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/012 Traversing Child Nodes.mp423.58MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/013 Using parentNode & parentElement.mp411.27MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/014 Selecting Sibling Elements.mp419.13MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/015 DOM Traversal vs Query Methods.mp412.96MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/016 Styling DOM Elements.mp440.74MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/017 Creating Elements with JS - Overview.mp43.52MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/018 Adding Elements via HTML in Code.mp432.96MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/019 Adding Elements via createElement().mp412.95MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/020 Inserting DOM Elements.mp429.05MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/021 Cloning DOM Nodes.mp43.23MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/022 Live Node Lists vs Static Node Lists.mp414.45MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/023 Removing Elements.mp46.62MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/024 Insertion & Removal Method Summary.mp44.24MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/026 Setting Up the Practice Project.mp44.41MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/027 Selecting the Modal and Add Button.mp447.47MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/028 Opening a Modal by Changing CSS Classes.mp418.71MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/029 Controlling the Backdrop.mp455.02MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/030 Fetching and Validating User Input.mp433.37MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/031 Creating a Movie in JavaScript & Clearing the Input.mp412.73MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/032 Rendering Movie Items on the Screen.mp450.6MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/033 Deleting Movie Elements.mp471.15MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/034 Showing & Hiding the Are you sure Dialog.mp444.89MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/035 Starting with the Confirmation Logic.mp429.9MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/036 Finishing the App.mp470.62MB
07 - Working with the DOM (Browser HTML Code) in JavaScript/037 Wrap Up.mp413.87MB
08 - More on Arrays & Iterables/001 Module Introduction.mp41.32MB
08 - More on Arrays & Iterables/002 What are Iterables and Array-like Objects.mp43.28MB
08 - More on Arrays & Iterables/003 Creating Arrays.mp416.9MB
08 - More on Arrays & Iterables/004 Which Data Can You Store In Arrays.mp412.37MB
08 - More on Arrays & Iterables/005 push(), pop(), unshift(), shift() - Adding & Removing Elements.mp415.25MB
08 - More on Arrays & Iterables/006 The splice() Method.mp417.16MB
08 - More on Arrays & Iterables/007 Selecting Ranges & Creating Copies with slice().mp418.1MB
08 - More on Arrays & Iterables/008 Adding Arrays to Arrays with concat().mp45.94MB
08 - More on Arrays & Iterables/009 Retrieving Indexes with indexOf() & lastIndexOf().mp411.2MB
08 - More on Arrays & Iterables/010 Finding Stuff find() and findIndex().mp417.66MB
08 - More on Arrays & Iterables/011 Is it Included.mp44.7MB
08 - More on Arrays & Iterables/012 Alternative to for Loops The forEach() Method.mp411.41MB
08 - More on Arrays & Iterables/013 Transforming Data with map().mp46.98MB
08 - More on Arrays & Iterables/014 sort()ing and reverse()ing.mp410.77MB
08 - More on Arrays & Iterables/015 Filtering Arrays with filter().mp47.92MB
08 - More on Arrays & Iterables/016 Where Arrow Functions Shine!.mp44.53MB
08 - More on Arrays & Iterables/017 The Important reduce() Method.mp421.28MB
08 - More on Arrays & Iterables/019 Arrays & Strings - split() and join().mp415.25MB
08 - More on Arrays & Iterables/020 The Spread Operator (...).mp435.32MB
08 - More on Arrays & Iterables/021 Understanding Array Destructuring.mp414.85MB
08 - More on Arrays & Iterables/022 Maps & Sets - Overview.mp411.47MB
08 - More on Arrays & Iterables/023 Working with Sets.mp418.71MB
08 - More on Arrays & Iterables/024 Working with Maps.mp428.53MB
08 - More on Arrays & Iterables/025 Maps vs Objects.mp47.88MB
08 - More on Arrays & Iterables/026 Understanding WeakSet.mp427.08MB
08 - More on Arrays & Iterables/027 Understanding WeakMap.mp47.06MB
08 - More on Arrays & Iterables/028 Wrap Up.mp46.65MB
09 - More on Objects/001 Module Introduction.mp47.81MB
09 - More on Objects/002 What's an Object.mp414.42MB
09 - More on Objects/004 Objects - Recap.mp44.74MB
09 - More on Objects/005 Adding, Modifying & Deleting Properties.mp414.43MB
09 - More on Objects/006 Special Key Names & Square Bracket Property Access.mp428.24MB
09 - More on Objects/007 Property Types & Property Order.mp410.78MB
09 - More on Objects/008 Dynamic Property Access & Setting Properties Dynamically.mp413.5MB
09 - More on Objects/009 Demo App & Shorthand Property Syntax.mp431.07MB
09 - More on Objects/010 Rendering Elements based on Objects.mp431.86MB
09 - More on Objects/011 for-in Loops & Outputting Dynamic Properties.mp422.17MB
09 - More on Objects/012 Adding the Filter Functionality.mp421.17MB
09 - More on Objects/013 Understanding Chaining (Property & Method Chaining).mp46.09MB
09 - More on Objects/014 The Object Spread Operator (...).mp417.6MB
09 - More on Objects/015 Understanding Object.assign().mp44.29MB
09 - More on Objects/016 Object Destructuring.mp425.31MB
09 - More on Objects/017 Checking for Property Existance.mp411.09MB
09 - More on Objects/018 Introducing this.mp433.5MB
09 - More on Objects/019 The Method Shorthand Syntax.mp42.92MB
09 - More on Objects/020 The this Keyword And Its Strange Behavior.mp434.15MB
09 - More on Objects/021 call() and apply().mp412.05MB
09 - More on Objects/022 What the Browser (Sometimes) Does to this.mp413.82MB
09 - More on Objects/023 this and Arrow Functions.mp434.66MB
09 - More on Objects/025 Getters & Setters.mp427.75MB