Advanced JavaScript Techniques
Contact Us for Dates
3 days practical workshop for up to 12 people.
Only £1185 per person
Contact us for Onsite Price
There's a lot more to JavaScript than first meets the eye. This course explores the language in forensic detail, shining a light on the dark areas that often confuse and confound JavaScript development teams. If you're writing production JavaScript code, and you need to get it right, then this is the course for you.
Layout
This course is a mixture of lectures and hands on exercises designed to reinforce the topics learnt
Training Course Objectives
- Object-oriented programming in JavaScript
- Managing scope in a large JavaScript application
- Understanding JavaScript gotchas
- Using patterns to improve code quality
- Testing techniques
Training Course Prerequisites
- At least 3 months JavaScript development
Chapters
Chapter 1 Function Techniques
- Literal functions
- Declaration hoisting
- Arguments and function overloading
- Recursion
- Managing 'this' in call-backs
- 4 ways to invoke a function
Chapter 2 Object-Oriented JavaScript
- Object literals
- Default and guard operators
- Property attributes
- Understanding prototypes
- Enumerating object properties
- Adding and deleting properties dynamically
Chapter 3 Implementing Inheritance in JavaScript
- Pseudo-classical, prototypal, and functional inheritance
- Mixins
- Overriding and super()
- Using prototype effectively
Chapter 4 Array Techniques
- Literal arrays
- Using 'length' and 'delete'
- Using 'for' vs. 'for in'
- Associative arrays
- Augmenting the array prototype
- Multidimensional arrays
Chapter 5 Managing Scope and Namespaces
- Lexical scope
- Closures
- Revealing Module pattern
- Bind
- Avoiding polluting the global namespace
- Immediately-invoked function expressions (IIFEs)
- Implementing a robust namespace factory method
Chapter 6 Asynchronous Programming Patterns
- Call-backs with asynchronous methods
- Promise/future with deferrable values
- The Observable pattern
Chapter 7 TDD JavaScript
- TDD essentials
- Overview of testing frameworks
- Using Jest