Advanced JavaScript Topics

Video description

Build a solid foundation in advanced JavaScript topics with the help of project building activities

About This Video

  • Get ready to explore the advanced concepts of JavaScript
  • Learn how to apply first-class and higher-order functions in your JavaScript projects
  • Apply your JavaScript knowledge to build a real-world application

In Detail

If you want to make a career in JavaScript, it is necessary to have knowledge and skills of the advanced concepts. This course will give you in-depth knowledge of JavaScript and will help you to understand the JavaScript language much better.

The course starts by explaining the learning objectives and highlighting the importance of JavaScript in programming. Next, with the help of coding exercises, you will understand JavaScript libraries, frameworks, objects, and functions. Moving along, you will get to grips with module patterns and learn how to create, load, and test a JSON file. Next, you will learn the techniques to apply OOP concepts to a project and start working on a prototype project. Towards the end, you will master the functional programming concepts used in JavaScript.

By the end of this course, you will be ready to work on real-world projects that require advanced JavaScript skills.

Who this book is for

This is an advanced course in JavaScript that is for anyone who is interested to take their knowledge of JavaScript to the next level. A good understanding of the basic concepts of JavaScript is needed to get started with this course.

Publisher resources

Download Example Code

Table of contents

  1. Chapter 1 : Introduction
    1. Course Introduction
    2. Where Will You Go with JavaScript?
  2. Chapter 2 : Think Like a Programmer: Libraries and Frameworks
    1. Think Like a Programmer: Libraries and Frameworks
  3. Chapter 3 : Advanced Concepts of Objects and Functions
    1. Advanced Concepts of Functions and Objects
    2. Functions are Objects
    3. First Class Functions
    4. Invoking Functions
    5. Creating JavaScript Objects
    6. Understanding the "this" Keyword
    7. Examining "this" with Normal Function Invocation
    8. Normal Function Invocation Using Strict Mode
    9. Examining "this" with Method Invocation
    10. Understanding Prototypes
    11. Understanding the Prototype of Functions
    12. Using the "call" and "apply" Methods
    13. Using the "bind" Method
    14. Invoking Functions as Constructors
    15. Constructor Invocation and the Value of "this"
    16. Higher Order Functions, Callbacks, and the Problem with "this"
    17. Arrow Functions
    18. REVIEW: Invoking Functions and "this"
  4. Chapter 4 : Think Like a Programmer: Don't Repeat Yourself (DRY) Coding
    1. Abstraction and Don't Repeat Yourself (DRY) Coding
    2. Abstraction and Don't Repeat Yourself (DRY) Coding: Exercise 1
  5. Chapter 5 : Working with Objects
    1. Working with Objects Introduction
    2. Detecting Properties on Objects
    3. Changing Property Attributes
    4. Making Objects Immutable
    5. ES6 Object Features
    6. Understanding Method Chaining
  6. Chapter 6 : The Power of Functions
    1. The Power of Functions Introduction
    2. Immediately Invoked Function Expressions (IIFEs)
    3. Understanding Closure
  7. Chapter 7 : Think Like a Programmer: Avoiding Globals
    1. Avoiding Global Variables
    2. Using the Namespace Pattern
  8. Chapter 8 : Think Like a Programmer: The Module Pattern
    1. The Module Pattern - Part 1
    2. Optional: Overview of Fill-In-Question Code
    3. The Module Pattern: Part 2
    4. The Module Pattern: Part 3
    5. The Module Pattern: Part 4
  9. Chapter 9 : Working with Data: JavaScript Objects and JSON
    1. Introduction to Working with Data
    2. JSON Basics
    3. Creating a JSON File
    4. Loading a JSON File Using XMLHttpRequest
    5. Testing on a Server
  10. Chapter 10 : Using ECMAScript (ES) Modules
    1. Using ECMAScript (ES) Modules
    2. Important Features of ECMAScript (ES) Modules
    3. Applying (ES) Modules
    4. Bundling (ES) Modules
  11. Chapter 11 : Think Like a Programmer: Approaches to Programming
    1. Approaches to Programming
  12. Chapter 12 : Object-oriented Programming in JavaScript
    1. Introduction to Object-oriented Programming (OOP)
    2. OOP Theory
    3. Review: Setting the Prototype
    4. The Constructor Property
    5. Project: Applying OOP - Part 1
    6. Project: Applying OOP - Part 2
    7. Project: Applying OOP - Part 3
    8. Project: Applying OOP - Part 4
    9. Project: Applying OOP - Part 5
    10. Project: Applying OOP - Part 6
    11. Project: Applying OOP - Part 7
    12. Project: Applying OOP - Part 8
    13. Project: Applying OOP - Part 9
    14. Project: Applying OOP - Part 10 - Getters and Setters
    15. Project: Applying OOP - Part 11 - Wrapping up
    16. Enumerating Objects with the "for in" Loop
    17. Private Data in Constructors
    18. Creating Safe Constructors
    19. Can I Modify the Built-in Prototypes?
    20. What about ES6 Classes?
  13. Chapter 13 : Think Like a Programmer: Starting a Project
    1. Starting a Project
  14. Chapter 14 : Congratulations!
    1. Congratulations!
  15. Chapter 15 : Bonus Section: Functional Programming Concepts in JavaScript
    1. Functional Programming Introduction
    2. Avoiding Side Effects and Using Pure Functions
    3. Avoiding Shared State
    4. Avoiding Mutable Data
    5. Function Composition - Part 1
    6. Function Composition Part 2
    7. Imperative Programming versus Declarative Programming
    8. Functional Programming - Example
    9. Functional Programming - Techniques
    10. Using Reduce, Map, and Filter
    11. Assignment/Exercise Follow-up
    12. Getting Your Feet Wet with Currying
    13. Understanding Recursion
    14. Functional Libraries for JavaScript

Product information

  • Title: Advanced JavaScript Topics
  • Author(s): Steven Hancock
  • Release date: November 2019
  • Publisher(s): Packt Publishing
  • ISBN: 9781839219054