Thursday, 7 December, 2017 UTC


JavaScript’s `this` keyword is a source of confusion for many new and experienced developers alike. It can be frustrating if, for some reason, `this` doesn’t point to the context that was intended. This course will help you understand JavaScript’s `this` mechanism in depth. Marius will take us through all of the ways `this` will change its values. From why many libraries use `"use strict"` to how arrow functions take its outer execution context’s `this`. He will show us how JavaScript implicitly sets the `this` context and how we can set it ourselves. We’ll see that the call-site of a function determines the `this` value of that function invocation. We’ll also learn how to call a function with a specific `this` value and how to create functions that always remain tied to a specific `this` context. Finally, we’ll take a look at how `this` is treated within arrow functions and classes.