ES6 in Motion

ES6 in Motion
ES6 in Motion
English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 7h 14m | 1.84 GB

"This course is a fantastic dive into the features of ES6. The instructor is an expert on the material, and does a wonderful job in breaking down complex material into easy-to-understand concepts."
Peter Lawrence, Software Developer

ES6 in Motion is a unique video course that guides you through the most powerful ES6 features, like promises, arrow functions, and modules, giving you opportunities to practice and explore as you go. This self-paced tutorial includes over 7 hours of video teaching, neatly broken into digestible 5-7 minute lessons. If you've been struggling to wrap your head around ES6, or you're just looking for a fast way to level-up your JavaScript, it's time to get moving.

ES6, aka ECMAScript 2015, is the latest JavaScript language standard, offering dozens of powerful new language features. ES6 introduces proper classes, template strings, types, full support for Unicode, and more. For developers working with Node on server-side applications, the ES6 support for promises, arrow functions, and modules is a game-changer. ES6 keeps the simplicity and reliability you love about JavaScript, and adds the high-value professional language features you've been craving.

What you will learn:

  • Use arrow functions to write functional code
  • Clean apps using modules, classes, and variable scoping
  • Master asynchronous programming with promises
  • Rebuild arrays and objects with destructuring

This course is suitable for developers comfortable with using client-side JavaScript or Node.js.

Table of Contents

1 Welcome
2 History and Feature Compatibility
3 Introducing Arrow Functions
4 What Do These Arrow Functions Do
5 Arrow Functions versus Function Declarations
6 Computing Tax With A For Loop
7 Array Mapping With Arrow Functions
8 Caveat Object Literals From Arrow Functions
9 Concision Key Takeaways
10 The Magic Of This
11 The Secret This Tunnel
12 Wishing This Were Lexically Bound
13 The Self Workaround To This
14 Understanding This Binding
15 Fixing This With Bind
16 Lexical This With Arrow Functions
17 Caveat With Bind Call and Apply
18 Lexical Takeaways
19 Where Do You Prefer To Declare Variables
20 Block vs. Function Scope
21 Block Scoping With Let
22 Inadvertent Clobbering
23 Global Variable Pollution
24 No More IIFEs
25 Why You Should Declare Closer To Usage Now
26 Const
27 Takeaways
28 String Enhancements
29 Cloning and Opening The WebStorm Project
30 Why WebStorm Helps
31 Template Literals
32 Complex Expressions in Template Literals
33 Multiline Template Literals
34 Getting Functional and Injecting Multiline Expressions
35 Tagged Template Literals
36 String.raw
37 Takeaways
38 Destructuring
39 Object Literal Enhancements
40 From Literals To Patterns
41 Visualising Object Literals and Patterns
42 Array Patterns
43 The Key Is The Structure Of The Pattern
44 Pattern Mismatches
45 Destructuring Object Properties with a Custom Variable Name
46 Pattern Matching with Assignments
47 The Rest Parameter
48 Pattern Matching with Function Parameters
49 Safe Failures Provide Optional Matching
50 Don't Get Crazy
51 The Pattern Structure Is The Key
52 Takeaway Challenge
53 Patterns Everywhere
54 Default Parameter Values
55 For Of Loops and Array Prototype Entries
56 Default Values in Destructuring
57 Default Values with Arrow Function Parameters
58 Destructuring Defaults With Arrow Functions
59 Default Referring To Other Parameters And Variables
60 Scope For Defaults
61 Takeaways
62 Iteration
63 Why Iterables
64 Custom Query Iteration
65 Refactoring To The Iterator Protocol
66 Refactor To Multiple Iterators
67 Refactor To The Iterable Protocol
68 The For Of Loop Works On Iterables
69 The Rest Operator Works on Iterables
70 The Spread Operator Works On Iterables
71 Cleaning Up Iterables with Return
72 Takeaways
73 Generators
74 Generating Positive numbers with an Iterator
75 Generators Simplify Iterators
76 Generator Objects are Iterable and Iterators
77 Debugging A Generator
78 A Generator Is Like A Series Of Functions
79 A Days Generator
80 Refactoring The Person Query To A Generator
81 Takeaways
82 Promises
83 Callbacks
84 Introducing Promises and Fetch
85 Chaining Serial Async Operations Without Nesting
86 Concise Async With Arrow Functions
87 Catching Errors
88 Understanding Error Fall Through
89 Recovering From Async Errors
90 Catching Thrown Errors Too
91 Consuming Versus Producing Promises
92 Callbacks with setTimeout
93 Postulating A Promise-Based Delay
94 Wrapping setTimeout with a Promise
95 Generators Meet Promises
96 Passing Data When Resuming Generators
97 Yielding Promises
98 Generator Control Flow With Delay
99 Takeaways
100 Syntactic Sugar
101 HtmlTags
102 Instance Methods
103 Prototype Methods
104 Classes
105 WebStorm Refactor Constructor Function to Class
106 Class Declarations Are Not Hoisted
107 Static Methods
108 Inheritance and Prototypes
109 Prototype Chains
110 Extending Classes
111 Module Syntax
112 The Need For Modules
113 ES6 Module Syntax
114 Module Loading
115 jspm init
116 Loading Modules With SystemJS
117 Resources For Further Learning