Section 1 : Welcome, Welcome, Welcome!
|
Lecture 1 | NTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM | |
|
Lecture 2 | About Certification | |
|
Lecture 3 | Read Before You Start! | |
|
Lecture 4 | Migration Guide to v2 + Old Course | |
|
Lecture 5 | Setting Up Our Code Editor | 00:07:59 Duration |
Section 2 : JavaScript Fundamentals – Part 1
|
Lecture 1 | Section Intro | 00:00:44 Duration |
|
Lecture 2 | Hello World! | 00:05:49 Duration |
|
Lecture 3 | A Brief Introduction to JavaScript | 00:10:53 Duration |
|
Lecture 4 | Linking a JavaScript File | 00:15:37 Duration |
|
Lecture 5 | Values and Variables | 00:15:50 Duration |
|
Lecture 6 | Practice Assignments | |
|
Lecture 7 | Data Types | 00:18:47 Duration |
|
Lecture 8 | let, const and var | 00:09:46 Duration |
|
Lecture 9 | Basic Operators | |
|
Lecture 10 | Operator Precedence | 00:11:09 Duration |
|
Lecture 11 | Coding Challenge #1 | 00:09:56 Duration |
|
Lecture 12 | Strings and Template Literals | 00:10:43 Duration |
|
Lecture 13 | Taking Decisions if else Statements | 00:12:32 Duration |
|
Lecture 14 | Coding Challenge #2 | 00:06:06 Duration |
|
Lecture 15 | Type Conversion and Coercion | 00:16:34 Duration |
|
Lecture 16 | Truthy and Falsy Values | 00:09:42 Duration |
|
Lecture 17 | Equality Operators == vs | 00:15:14 Duration |
|
Lecture 18 | Boolean Logic | 00:08:09 Duration |
|
Lecture 19 | Logical Operators | 00:10:26 Duration |
|
Lecture 20 | Coding Challenge #3 | 00:14:57 Duration |
|
Lecture 21 | The switch Statement | 00:12:52 Duration |
|
Lecture 22 | Statements and Expressions | 00:05:47 Duration |
|
Lecture 23 | The Conditional (Ternary) Operator | 00:09:40 Duration |
|
Lecture 24 | Coding Challenge #4 | 00:08:52 Duration |
|
Lecture 25 | JavaScript Releases ES5, ES6+ and ESNext | 00:13:40 Duration |
Section 3 : JavaScript Fundamentals – Part 2
|
Lecture 1 | Section Intro | 00:00:28 Duration |
|
Lecture 2 | Activating Strict Mode | 00:09:42 Duration |
|
Lecture 3 | Functions | 00:18:49 Duration |
|
Lecture 4 | Function Declarations vs | 00:10:08 Duration |
|
Lecture 5 | Arrow Functions | 00:09:35 Duration |
|
Lecture 6 | Functions Calling Other Functions | 00:09:43 Duration |
|
Lecture 7 | Reviewing Functions | 00:15:19 Duration |
|
Lecture 8 | Coding Challenge #1 | 00:17:58 Duration |
|
Lecture 9 | Introduction to Arrays | 00:21:22 Duration |
|
Lecture 10 | Basic Array Operations (Methods) | 00:12:30 Duration |
|
Lecture 11 | Coding Challenge #2 | 00:09:24 Duration |
|
Lecture 12 | Introduction to Objects | 00:05:56 Duration |
|
Lecture 13 | Dot vs | 00:19:05 Duration |
|
Lecture 14 | Object Methods | 00:22:52 Duration |
|
Lecture 15 | Coding Challenge #3 | 00:12:46 Duration |
|
Lecture 16 | Iteration The for Loop | 00:10:45 Duration |
|
Lecture 17 | Looping Arrays, Breaking and Continuing | 00:21:47 Duration |
|
Lecture 18 | Looping Backwards and Loops in Loops | 00:11:34 Duration |
|
Lecture 19 | The while Loop | 00:11:33 Duration |
|
Lecture 20 | Coding Challenge #4 | 00:15:26 Duration |
Section 4 : How to Navigate This Course
|
Lecture 1 | Pathways and Section Roadmaps | 00:03:57 Duration |
|
Lecture 2 | Course Pathways |
Section 5 : Developer Skills & Editor Setup
|
Lecture 1 | Section Intro | 00:00:30 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Setting up Prettier and VS Code | 00:15:42 Duration |
|
Lecture 4 | Installing Node | 00:11:05 Duration |
|
Lecture 5 | Learning How to Code | 00:17:01 Duration |
|
Lecture 6 | How to Think Like a Developer Become a Proble | 00:10:17 Duration |
|
Lecture 7 | Using Google, StackOverflow and MDN | 00:26:20 Duration |
|
Lecture 8 | Debugging (Fixing Errors) | 00:04:44 Duration |
|
Lecture 9 | Debugging with the Console and Breakpoints | 00:19:13 Duration |
|
Lecture 10 | Coding Challenge #1 | 00:15:02 Duration |
Section 6 : [OPTIONAL] HTML & CSS Crash Course
|
Lecture 1 | Section Intro | 00:00:31 Duration |
|
Lecture 2 | Basic HTML Structure and Elements | 00:08:49 Duration |
|
Lecture 3 | Attributes, Classes and IDs | 00:12:55 Duration |
|
Lecture 4 | Basic Styling with CSS | 00:11:49 Duration |
|
Lecture 5 | Introduction to the CSS Box Model | 00:20:38 Duration |
Section 7 : JavaScript in the Browser DOM and Events Fundamentals
|
Lecture 1 | Section Roadmap | |
|
Lecture 2 | Section Intro | 00:00:41 Duration |
|
Lecture 3 | PROJECT #1 Guess My Number! | 00:08:33 Duration |
|
Lecture 4 | What's the DOM and DOM Manipulation | 00:06:14 Duration |
|
Lecture 5 | Selecting and Manipulating Elements | 00:08:07 Duration |
|
Lecture 6 | Handling Click Events | 00:12:40 Duration |
|
Lecture 7 | Implementing the Game Logic | 00:19:21 Duration |
|
Lecture 8 | Manipulating CSS Styles | 00:08:03 Duration |
|
Lecture 9 | Coding Challenge #1 | 00:11:19 Duration |
|
Lecture 10 | Implementing Highscores | 00:07:34 Duration |
|
Lecture 11 | Refactoring Our Code The DRY Principle | 00:14:48 Duration |
|
Lecture 12 | PROJECT #2 Modal Window | 00:13:10 Duration |
|
Lecture 13 | Working With Classes | 00:16:45 Duration |
|
Lecture 14 | Handling an Esc Keypress Event | 00:14:05 Duration |
|
Lecture 15 | PROJECT #3 Pig Game | 00:16:41 Duration |
|
Lecture 16 | Rolling the Dice | 00:15:43 Duration |
|
Lecture 17 | Switching the Active Player | 00:15:00 Duration |
|
Lecture 18 | Holding Current Score | 00:24:46 Duration |
|
Lecture 19 | Resetting the Game | 00:15:20 Duration |
Section 8 : How JavaScript Works Behind the Scenes
|
Lecture 1 | Section Intro | 00:01:22 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | An High-Level Overview of JavaScript | 00:11:41 Duration |
|
Lecture 4 | The JavaScript Engine and Runtime | 00:13:18 Duration |
|
Lecture 5 | Execution Contexts and The Call Stack | 00:17:28 Duration |
|
Lecture 6 | Scope and The Scope Chain | 00:25:05 Duration |
|
Lecture 7 | Scoping in Practice | 00:20:58 Duration |
|
Lecture 8 | Variable Environment Hoisting and The TDZ | 00:10:46 Duration |
|
Lecture 9 | Hoisting and TDZ in Practice | 00:14:25 Duration |
|
Lecture 10 | The this Keyword | 00:06:10 Duration |
|
Lecture 11 | The this Keyword in Practice | 00:13:02 Duration |
|
Lecture 12 | Regular Functions vs | 00:17:46 Duration |
|
Lecture 13 | Primitives vs | 00:15:30 Duration |
|
Lecture 14 | Primitives vs | 00:14:43 Duration |
Section 9 : Data Structures, Modern Operators and Strings
|
Lecture 1 | Section Intro | 00:00:45 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Destructuring Arrays | 00:19:24 Duration |
|
Lecture 4 | Destructuring Objects | 00:19:33 Duration |
|
Lecture 5 | The Spread Operator ( | 00:21:07 Duration |
|
Lecture 6 | Rest Pattern and Parameters | 00:18:51 Duration |
|
Lecture 7 | Short Circuiting (&& and ) | 00:15:35 Duration |
|
Lecture 8 | The Nullish Coalescing Operator () | 00:03:20 Duration |
|
Lecture 9 | Coding Challenge #1 | 00:14:41 Duration |
|
Lecture 10 | Looping Arrays The for-of Loop | 00:07:06 Duration |
|
Lecture 11 | Enhanced Object Literals | 00:06:41 Duration |
|
Lecture 12 | Optional Chaining ( | 00:15:54 Duration |
|
Lecture 13 | Looping Objects Object Keys, Values, and Entries | 00:09:51 Duration |
|
Lecture 14 | Coding Challenge #2 | 00:14:21 Duration |
|
Lecture 15 | Sets | 00:12:41 Duration |
|
Lecture 16 | Maps Fundamentals | 00:13:51 Duration |
|
Lecture 17 | Maps Iteration | 00:12:31 Duration |
|
Lecture 18 | Summary Which Data Structure to Use | 00:08:57 Duration |
|
Lecture 19 | Coding Challenge #3 | 00:09:27 Duration |
|
Lecture 20 | Working With Strings - Part 1 | 00:16:10 Duration |
|
Lecture 21 | Working With Strings - Part 2 | 00:21:07 Duration |
|
Lecture 22 | Working With Strings - Part 3 | 00:21:30 Duration |
|
Lecture 23 | Coding Challenge #4 | 00:15:04 Duration |
|
Lecture 24 | String Methods Practice |
Section 10 : A Closer Look at Functions
|
Lecture 1 | Section Intro | 00:00:40 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Default Parameters | 00:09:22 Duration |
|
Lecture 4 | How Passing Arguments Works Value vs | 00:12:59 Duration |
|
Lecture 5 | First-Class and Higher-Order Functions | 00:05:01 Duration |
|
Lecture 6 | Functions Accepting Callback Functions | 00:14:59 Duration |
|
Lecture 7 | Functions Returning Functions | 00:06:23 Duration |
|
Lecture 8 | The call and apply Methods | 00:16:36 Duration |
|
Lecture 9 | The bind Method | 00:21:25 Duration |
|
Lecture 10 | Coding Challenge #1 | 00:18:33 Duration |
|
Lecture 11 | Immediately Invoked Function Expressions (IIFE) | 00:07:38 Duration |
|
Lecture 12 | Closures | 00:18:52 Duration |
|
Lecture 13 | More Closure Examples | 00:15:16 Duration |
|
Lecture 14 | Coding Challenge #2 | 00:05:11 Duration |
Section 11 : Working With Arrays
|
Lecture 1 | Section Intro | |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Simple Array Methods | 00:16:19 Duration |
|
Lecture 4 | Looping Arrays forEach | 00:13:25 Duration |
|
Lecture 5 | forEach With Maps and Sets | 00:05:11 Duration |
|
Lecture 6 | PROJECT Bankist App | 00:09:24 Duration |
|
Lecture 7 | Creating DOM Elements | 00:18:18 Duration |
|
Lecture 8 | Coding Challenge #1 | 00:08:20 Duration |
|
Lecture 9 | Data Transformations map, filter, reduce | 00:04:07 Duration |
|
Lecture 10 | The map Method | 00:15:27 Duration |
|
Lecture 11 | Computing Usernames | 00:12:03 Duration |
|
Lecture 12 | The filter Method | 00:06:03 Duration |
|
Lecture 13 | The reduce Method | 00:20:46 Duration |
|
Lecture 14 | Coding Challenge #2 | 00:09:49 Duration |
|
Lecture 15 | The Magic of Chaining Methods | 00:19:20 Duration |
|
Lecture 16 | Coding Challenge #3 | 00:03:45 Duration |
|
Lecture 17 | The find Method | 00:06:26 Duration |
|
Lecture 18 | Implementing Login | 00:24:03 Duration |
|
Lecture 19 | Implementing Transfers | 00:20:41 Duration |
|
Lecture 20 | The findIndex Method | 00:12:11 Duration |
|
Lecture 21 | some and every | 00:14:54 Duration |
|
Lecture 22 | flat and flatMap | 00:09:15 Duration |
|
Lecture 23 | Sorting Arrays | 00:21:33 Duration |
|
Lecture 24 | More Ways of Creating and Filling Arrays | 00:20:21 Duration |
|
Lecture 25 | Summary Which Array Method to Use | 00:05:28 Duration |
|
Lecture 26 | Array Methods Practice | 00:31:55 Duration |
|
Lecture 27 | Coding Challenge #4 | 00:23:27 Duration |
Section 12 : Numbers, Dates, Intl and Timers
|
Lecture 1 | Section Intro | 00:00:40 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Converting and Checking Numbers | 00:16:26 Duration |
|
Lecture 4 | Math and Rounding | 00:18:03 Duration |
|
Lecture 5 | The Remainder Operator | 00:10:35 Duration |
|
Lecture 6 | Working with BigInt | 00:10:58 Duration |
|
Lecture 7 | Creating Dates | 00:12:34 Duration |
|
Lecture 8 | Adding Dates to Bankist App | 00:22:07 Duration |
|
Lecture 9 | Operations With Dates | 00:15:18 Duration |
|
Lecture 10 | Internationalizing Dates (Intl) | 00:16:12 Duration |
|
Lecture 11 | Internationalizing Numbers (Intl) | |
|
Lecture 12 | Timers setTimeout and setInterval | 00:13:27 Duration |
|
Lecture 13 | Implementing a Countdown Timer | 00:27:57 Duration |
Section 13 : Advanced DOM and Events
Section 14 : Object-Oriented Programming (OOP) With JavaScript
|
Lecture 1 | Section Intro | 00:00:57 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | What is Object-Oriented Programming | 00:20:22 Duration |
|
Lecture 4 | OOP in JavaScript | 00:09:37 Duration |
|
Lecture 5 | Constructor Functions and the new Operator | 00:14:06 Duration |
|
Lecture 6 | Prototypes | 00:14:23 Duration |
|
Lecture 7 | Prototypal Inheritance and The Prototype Chain | 00:10:40 Duration |
|
Lecture 8 | Prototypal Inheritance on Built-In Objects | 00:14:30 Duration |
|
Lecture 9 | Coding Challenge #1 | 00:07:18 Duration |
|
Lecture 10 | ES6 Classes | 00:12:33 Duration |
|
Lecture 11 | Setters and Getters | 00:13:01 Duration |
|
Lecture 12 | Static Methods | 00:06:14 Duration |
|
Lecture 13 | Object | 00:10:25 Duration |
|
Lecture 14 | Coding Challenge #2 | 00:05:47 Duration |
|
Lecture 15 | Inheritance Between Classes Constructor Functions | |
|
Lecture 16 | Coding Challenge #3 | 00:10:24 Duration |
|
Lecture 17 | Inheritance Between Classes ES6 Classes | 00:10:28 Duration |
|
Lecture 18 | Inheritance Between Classes Object | 00:08:34 Duration |
|
Lecture 19 | Another Class Example | 00:10:33 Duration |
|
Lecture 20 | Encapsulation Protected Properties and Methods | 00:06:29 Duration |
|
Lecture 21 | Encapsulation Private Class Fields and Methods | 00:15:53 Duration |
|
Lecture 22 | Chaining Methods | 00:04:09 Duration |
|
Lecture 23 | ES6 Classes Summary | 00:06:42 Duration |
|
Lecture 24 | Coding Challenge #4 | 00:08:43 Duration |
Section 15 : Mapty App OOP, Geolocation, External Libraries, and More!
|
Lecture 1 | Section Intro | 00:00:49 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Project Overview | 00:04:42 Duration |
|
Lecture 4 | How to Plan a Web Project | 00:17:19 Duration |
|
Lecture 5 | Using the Geolocation API | 00:07:54 Duration |
|
Lecture 6 | Displaying a Map Using Leaflet Library | 00:13:35 Duration |
|
Lecture 7 | Displaying a Map Marker | 00:19:28 Duration |
|
Lecture 8 | Rendering Workout Input Form | 00:16:29 Duration |
|
Lecture 9 | Project Architecture | 00:09:14 Duration |
|
Lecture 10 | Refactoring for Project Architecture | 00:23:51 Duration |
|
Lecture 11 | Managing Workout Data Creating Classes | 00:15:58 Duration |
|
Lecture 12 | Creating a New Workout | 00:33:45 Duration |
|
Lecture 13 | Rendering Workouts | 00:24:06 Duration |
|
Lecture 14 | Move to Marker On Click | 00:16:17 Duration |
|
Lecture 15 | Working with localStorage | 00:25:17 Duration |
|
Lecture 16 | Final Considerations | 00:05:13 Duration |
Section 16 : Asynchronous JavaScript Promises, AsyncAwait, and AJAX
|
Lecture 1 | Section Intro | 00:00:47 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Asynchronous JavaScript, AJAX and APIs | 00:17:31 Duration |
|
Lecture 4 | Our First AJAX Call XMLHttpRequest | 00:18:53 Duration |
|
Lecture 5 | [OPTIONAL] How the Web Works Requests | 00:12:57 Duration |
|
Lecture 6 | Welcome to Callback Hell | 00:13:11 Duration |
|
Lecture 7 | Promises and the Fetch API | 00:09:04 Duration |
|
Lecture 8 | Consuming Promises | 00:09:09 Duration |
|
Lecture 9 | Chaining Promises | 00:08:59 Duration |
|
Lecture 10 | Handling Rejected Promises | 00:15:38 Duration |
|
Lecture 11 | Throwing Errors Manually | 00:15:12 Duration |
|
Lecture 12 | Coding Challenge #1 | 00:16:14 Duration |
|
Lecture 13 | Asynchronous Behind the Scenes The Event Loop | 00:17:24 Duration |
|
Lecture 14 | The Event Loop in Practice | 00:09:02 Duration |
|
Lecture 15 | Building a Simple Promise | 00:19:54 Duration |
|
Lecture 16 | Promisifying the Geolocation API | 00:13:04 Duration |
|
Lecture 17 | Coding Challenge #2 | 00:15:43 Duration |
|
Lecture 18 | Consuming Promises with AsyncAwait | 00:14:38 Duration |
|
Lecture 19 | Error Handling With try | 00:09:53 Duration |
|
Lecture 20 | Returning Values from Async Functions | 00:14:13 Duration |
|
Lecture 21 | Running Promises in Parallel | 00:10:35 Duration |
|
Lecture 22 | Other Promise Combinators race, allSettled | 00:13:03 Duration |
|
Lecture 23 | Coding Challenge #3 | 00:17:12 Duration |
Section 17 : Modern JavaScript Development Modules, Tooling, and Functional
|
Lecture 1 | Section Intro | 00:00:37 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | An Overview of Modern JavaScript Development | 00:06:04 Duration |
|
Lecture 4 | An Overview of Modules in JavaScript | 00:14:43 Duration |
|
Lecture 5 | Exporting and Importing in ES6 Modules | 00:22:21 Duration |
|
Lecture 6 | The Module Pattern | 00:09:47 Duration |
|
Lecture 7 | CommonJS Modules | 00:03:51 Duration |
|
Lecture 8 | A Brief Introduction to the Command Line | 00:11:46 Duration |
|
Lecture 9 | Introduction to NPM | 00:18:18 Duration |
|
Lecture 10 | Bundling With Parcel and NPM Scripts | 00:20:55 Duration |
|
Lecture 11 | Configuring Babel and Polyfilling | 00:17:10 Duration |
|
Lecture 12 | Review Writing Clean and Modern JavaScript | 00:09:54 Duration |
|
Lecture 13 | Let's Fix Some Bad Code Part 1 | 00:23:02 Duration |
|
Lecture 14 | Declarative and Functional JavaScript Principles | 00:11:46 Duration |
|
Lecture 15 | Let's Fix Some Bad Code Part 2 | 00:37:40 Duration |
Section 18 : Forkify App Building a Modern Application
Section 19 : Setting Up Git and Deployment
|
Lecture 1 | Section Intro | 00:00:35 Duration |
|
Lecture 2 | Section Roadmap | |
|
Lecture 3 | Simple Deployment With Netlify | 00:11:05 Duration |
|
Lecture 4 | Setting Up Git and GitHub | 00:06:47 Duration |
|
Lecture 5 | Git Fundamentals | 00:19:09 Duration |
|
Lecture 6 | Pushing to GitHub | 00:09:08 Duration |
|
Lecture 7 | Setting Up Continuous Integration With Netlify | 00:09:56 Duration |
|
Lecture 8 | About Proctor Testing |