Advanced JavaScript Topics

In Depth JavaScript Training for Mastering Important Patterns, the Power of Functions, OOP Concepts, JavaScript Projects

4.43 (799 reviews)
Udemy
platform
English
language
Programming Languages
category
instructor
6,780
students
19 hours
content
Oct 2023
last update
$84.99
regular price

What you will learn

Apply first-class and higher order functions in your coding practices.

Explain the different scenarios that affect the value of this.

Identify the object to which this is bound.

Manipulate this binding to accomplish programing problems.

Use prototypes in your coding.

Understand and use IIFEs in your code.

Define closure and take advantage of it in your code.

Apply the namespace and module pattern to your coding projects.

Create JSON files.

Load and use JSON data in a project.

Manipulate properties on JavaScript objects.

Apply OOP principles to your JavaScript coding practices.

Make use of constructors and Object create for setting up objects and prototypes.

Understand and apply the true nature of JavaScript inheritance.

Explain functional programming concepts.

Apply functional programming techniques to your JavaScript projects.

Description

Advanced Topics picks up where the Getting Started course ended. You should now have some experience with JavaScript and understand the JavaScript language much better. Therefore, you are ready to learn more of the nuances and important patterns that advanced JavaScript developers know and use.

In Learn Modern JavaScript: Advanced Topics, we explore the more advanced techniques in JavaScript. You learn advanced concepts for objects and functions, the value of 'this', the power of functions using closure and IIFEs. You learn about the namespace and module patterns. You learn JSON and how to load a JSON file. You will follow along as we apply OOP concepts to a project. You get very familiar with the prototype, and these are just the main topics covered in this advanced course. A new bonus section helps you get familiar with functional programming concepts in JavaScript.

This course contains 15 sections and one bonus section, over 90 different lectures, over 17 hours of video, 4 quizzes, 9 assignments, 1 large project and several Think Like a Programmer sections with invaluable information for those intent on making JavaScript a career choice or a major part of their lives.

If you want to improve your JavaScript skills, this course is for you!

Content

Introduction

Course Introduction
Where will You Go with JavaScript?
Tools You Will Need for this Course
A Word about the Exercise Files

Think Like a Programmer: Libraries and Frameworks

Think Like a Programmer: Libraries and Frameworks

Advanced Concepts for Objects and Functions

Advanced Concepts for Functions and Objects
REVIEW: Function Declarations and Function Expressions
Functions are Objects
First Class Functions
Invoking Functions
Creating JavaScript Objects
Understanding this
Examining this with Normal Function Invocation
Normal Function Invocation Using strict mode
Examining this with Method Invocation
Understanding Prototypes
Understanding the Prototype of Functions
Using call and apply Function Methods
Using the bind Function Method
Invoking Functions as Constructors: The Magic of new
Constructor Invocation and the Value of this
Higher Order Functions, Callbacks and the Problem with this
Arrow Functions
REVIEW: Invoking Function and this
Section Quiz

Think Like a Programmer: DRY Coding

Abstraction and DRY Coding
Abstraction and DRY Coding: Exercise 1

Working with Objects

Working with Objects Introduction
Detecting Properties on Objects
Changing Property Attributes
Making Objects Immutable
ES6 Object Features
Understanding Method Chaining
Section Quiz

The Power of Functions

The Power of Functions Introduction
Immediately Invoked Function Expressions (IIFEs)
Review of Scope
Understanding Closure
OPTIONAL: Closure Take 2

Think Like a Programmer: Avoiding Globals

Avoiding Global Variables
Using the Namespace Pattern

The Power of Functions Continued

Think Like a Programmer: The Module Pattern

The Module Pattern Part 1
Optional: Overview of Fill-In-Question Code
The Module Pattern: Part 2
The Module Pattern: Part 3
The Module Pattern: Part 4

Working with Data: JavaScript Objects and JSON

Introduction to Working with Data
JSON Basics
Creating a JSON File
Loading a JSON File Using XMLHttpRequest
Testing on a Server
Setting Up a Local Server Using Node

Think Like a Programmer: Approaches to Programming

Approaches to Programming

Object Oriented Programming in JavaScript

Introduction to Object Oriented Programming
OOP Theory
Review: Setting the Prototype
The Constructor Property
Project: Applying OOP Part 1
Project: Applying OOP Part 2
Project: Applying OOP Part 3
Project: Applying OOP Part 4
Project: Applying OOP Part 5
Project: Applying OOP Part 6
Project: Applying OOP Part 7
Project: Applying OOP Part 8
Project: Applying OOP Part 9
Project: Applying OOP Part 10 - Getters and Setters
Project: Applying OOP Part 11 - Wrap Up
Object Oriented Programming: Follow Up Topics
Enumerating Objects with the for in Loop
Private Data in Constructors
Creating Safe Constructors
Can I Modify the Built-in Prototypes?
What About ES6 Classes?

Think Like a Programmer: Starting a Project

Starting a Project

Congratulations!

Congratulations!

Bonus Section: Functional Programming Concepts in JavaScript

Functional Programming Introduction
Avoiding Side Effects and Using Pure Functions
Avoiding Shared State
Avoiding Mutable Data
Function Composition Part 1
Function Composition Part 2
Imperative Programming VS Declarative Programming
Functional Programming Example
Understanding Functional Programming Quiz
Functional Programming Techniques
Using Reduce, Map and Filter
Assignment / Exercise Follow Up
Getting Your Feet Wet with Currying
Understanding Recursion
Functional Libraries for JavaScript
BONUS Lecture! Discounts on Other Courses

Screenshots

Advanced JavaScript Topics - Screenshot_01Advanced JavaScript Topics - Screenshot_02Advanced JavaScript Topics - Screenshot_03Advanced JavaScript Topics - Screenshot_04

Reviews

Robert
August 2, 2023
I believe this course is a great match for me. Steven seems to think in the way I do and so he teaches in the way that I am most able to learn. Having reached a plateau of intermediate skills in JavaScript, I am now looking to deep dive into more advanced concepts including server-side use of JavaScript as in Node.js. I look forward to pushing through this material and feel confident that I will leave this course with a deeper understanding of concepts I already grasp along with a new understanding of some of the more advanced concepts.
Daniel
February 28, 2023
An excellent teacher. He explains things as well as anyone I've heard. Much of the course is badly outdated. To be fair, there's no harm in learning outdated JS, as it's all compatible. But you should research updated methods of doing most of these tasks. Like many of the outdated courses on Udemy, there's very short update sections explaining that there are new methods like fetch, that have been added. But the course doesn't go into the same detail on the uses of modern patterns as it does for the outdated ones. If you want to learn up-to-date Javascript, look elsewhere. If you want VERY solid explanations of some core concepts, you can still make use of this course.
Thomas
January 31, 2023
The instructor clearly and thoroughly explains each concept very, very well. This may be the best JavaScript course I have taken. The content here is exactly what I needed.
Asma
July 18, 2022
amazing course ! Steven takes his time explaining each and every concept. he uses simple examples but gives some good assignments. this course helped me a lot with my JS skills. I am excited to start the next course in this series ! Thank you Steven !
Aniel
July 14, 2022
Great content on advanced topics and the instructor presents it well without rushing through the content or speaking too fast.
Ahmad
June 1, 2022
Absolutely brilliantly instructed - I have come across some really good courses, this course is at the very top. THANK YOU for making this advanced course in Javascript, looking forward finishing and other material from same author.
Przemysław
March 8, 2022
Pros: very good teaching style, every subject explained in easy to handle way, overall great course. Cons: slow talking pace but this can be fixed by setting proper playing speed.
Boris
February 8, 2022
Javascripting.com is empty and the video about var vs let to which there was a link had misleading information about variable hoisting https://developer.mozilla.org/en-US/docs/Glossary/Hoisting I'm really in the beginning but yeah ... hope it gets better
Shivam
January 16, 2022
The in depth understanding that this course puts on the table is too important to understand how javascript actually works!
Ricky
January 6, 2022
Some explanations just doesn't mean anything, instructor is just winging it but unfortunately can't come up with a good explanation. "Break apart what needs to be done. break it apart and those pieces become your plan. How you will proceed to finish that project?" Some explanations are just the previous explanation with a different word arrangement, which doesn't add any more info and doesn't clarify any misunderstanding about the subject. Some explanations are almost whispered so it's quite difficult to hear what was being said, I don't want to increase my volume because the audio is painful to listen on a higher volume. Raising your voice doesn't make you more convincing and also no one is arguing with you. And on the video(not movie) about classes on Javascript, the instructors tune about classes, for me, sounds like it might as well be the devil himself. All throughout the video, he doesn't even reserve the idea that it's alright to use classes and just hammers down that because it's just syntactic sugar and not the real and his preferred way of doing things, it shouldn't be practiced.
Roman
September 14, 2021
I found Steve's videos on Youtube and enjoyed his style of teaching. So, I decided to purchase some of his tutorials on Udemy, and so far so good.
Adam
February 12, 2021
Steven has an exceptional skill in presenting complex subjects in an easy to understand manner. Each practical example is stepped through with a fine tooth comb. Invaluable!
Alessio
December 5, 2020
Amazing course. Many courses go from 0 Javascript to master in web development (encompassing node, HTML, CSS, and whatnot). Truth is that mastering 'the language' is a fundamental step to engage in more demanding tasks. This course is serious, academic-flavoured and gives the fundamentals to delve into serious coding. Thanks to the author!
Angel
August 3, 2017
I only have seen the first part at the moment. Although I already knew the "this" implicit binding concept from some book, the well explained examples have helped me to settle it. I hope to understand the next sections too...
Konstantinos
August 2, 2017
It's really, really hard to find courses like this, especially in this community that has hundreds of them. It says 'Advanced Topics' like so many others, but this course really means it. Very nice work, covers thoroughly all major key concepts. Good job, i'm very satisfied :)

Coupons

DateDiscountStatus
2/27/202090% OFF
expired
6/3/202084% OFF
expired
10/22/202084% OFF
expired
8/8/202284% OFF
expired

Charts

Price

Advanced JavaScript Topics - Price chart

Rating

Advanced JavaScript Topics - Ratings chart

Enrollment distribution

Advanced JavaScript Topics - Distribution chart

Related Topics

1072420
udemy ID
1/11/2017
course created date
4/27/2019
course indexed date
Bot
course submited by