Currently Empty: £0.00
Javascript is the language that modern developers need to know, and know well. Truly knowing Javascript will get you a job, and enable you to build quality web and server applications.
NOTE: This course includes information on ECMAScript 6 (ES6) the next version of Javascript!
In this course you will gain a deep understanding of Javascript, learn how Javascript works under the hood, and how that knowledge helps you avoid common pitfalls and drastically improve your ability to debug problems. You will find clarity in the parts that others, even experienced coders, may find weird, odd, and at times incomprehensible. You'll learn the beauty and deceptive power of this language that is at the forefront of modern software development today.
This course will cover such advanced concepts as objects and object literals, function expressions, prototypical inheritance, functional programming, scope chains, function constructors (plus new ES6 features), immediately invoked function expressions (IIFEs), call, apply, bind, and more.
We'll take a deep dive into the source code of popular frameworks such as jQuery and Underscore to see how you can use your understanding of Javascript to learn (and borrow) from other's good code.
Finally, you'll learn the foundations of how to build your own Javascript framework or library.
What you'll learn in this course will make you a better Javascript developer, and improve your abilities in AngularJS, NodeJS, jQuery, React, Ember, MongoDB, and all other Javascript-based technologies!
Learn to love Javascript, and code in it well.
Note: In this course you'll also get downloadable source code. You will often be provided with 'starter' code, giving you the base for you to start writing your code, and 'finished' code to compare your code to.
Execution Contexts and Lexical Environments
Types and Operators
-
7Conceptual Aside: Syntax Parsers, Execution Contexts, and Lexical Environments
-
8Conceptual Aside: Name/Value Pairs and Objects
-
9Downloading Source Code for This Course
-
10The Global Environment and The Global Object
-
11The Execution Context - Creation and Hoisting
-
12Conceptual Aside: Javascript and 'undefined'
-
13The Execution Context - Code Execution
-
14Conceptual Aside: Single Threaded, Synchronous Execution
-
15Function Invocation and the Execution Stack
-
16Functions, Context, and Variable Environments
-
17The Scope Chain
-
18Scope, ES6, and let
-
19What About Asynchronous Callbacks?
Objects and Functions
-
20Conceptual Aside: Types and Javascript
-
21Primitive Types
-
22Conceptual Aside: Operators
-
23Operator Precedence and Associativity
-
24Operator Precedence and Associativity Table
-
25Conceptual Aside: Coercion
-
26Comparison Operators
-
27Equality Comparisons Table
-
28Existence and Booleans
-
29Default Values
-
30Framework Aside: Default Values
Object-Oriented Javascript and Prototypal Inheritance
-
31Objects and the Dot
-
32Objects and Object Literals
-
33Framework Aside: Faking Namespaces
-
34JSON and Object Literals
-
35Functions are Objects
-
36Function Statements and Function Expressions
-
37Conceptual Aside: By Value vs By Reference
-
38Objects, Functions, and 'this'
-
39Conceptual Aside: Arrays - Collections of Anything
-
40'arguments' and spread
-
41Framework Aside: Function Overloading
-
42Conceptual Aside: Syntax Parsers
-
43Dangerous Aside: Automatic Semicolon Insertion
-
44Framework Aside: Whitespace
-
45Immediately Invoked Functions Expressions (IIFEs)
-
46Framework Aside: IIFEs and Safe Code
-
47Understanding Closures
-
48Understanding Closures - Part 2
-
49Framework Aside: Function Factories
-
50Closures and Callbacks
-
51call(), apply(), and bind()
-
52Functional Programming
-
53Functional Programming - Part 2
Building Objects
Odds and Ends
-
58Function Constructors, 'new', and the History of Javascript
-
59Function Constructors and '.prototype'
-
60Dangerous Aside: 'new' and functions
-
61Conceptual Aside: Built-In Function Constructors
-
62Dangerous Aside: Built-In Function Constructors
-
63Dangerous Aside: Arrays and for..in
-
64Object.create and Pure Prototypal Inheritance
-
65ES6 and Classes
Examining Famous Frameworks and Libraries
Let's Build a Framework / Library!
EXTRA: TypeScript, ES6, and Transpiled Languages
Promises, Async, and Await
ES6: The Most Used Parts
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
Stars 5
35341
Stars 4
10546
Stars 3
1847
Stars 2
339
Stars 1
195