JavaScript in Depth

By Xah Lee. Date: . Last updated: .

This tutorial is:

  1. In depth. Based on JavaScript language specification for correctness.
  2. Standalone Code example for every paragraph.
  3. Covers ECMAScript ES2015 and more. ⭐
  4. No framework, no library, no design patterns jargon.
  5. Writen in the most simple way you can understand.
  6. Written in a cold style. No ninja no zen no joke.
understand JavaScript object in depth, in a math style.
Start at 25:50
Xah Talk Show 2019-09-13

JavaScript Basics

  1. JavaScript Basics
  2. true, false
  3. Operators
  4. Branch Control
  5. Loop
  6. Array Basics
  7. Object Basics
  8. RegExp Basics

JS Variable

  1. Value Types
  2. let
  3. const
  4. var
  5. var Order
  6. var Scope
  7. Global Variable
  8. Destructuring Assignment

JS String

  1. String Overview
  2. Template String
  3. Char, Code Unit, Codepoint
  4. String Escape Sequence
  5. Unicode Escape Sequence

JS Function

  1. Define Function
  2. Arrow Function ⭐
  3. Function Params
  4. “arguments” Object
  5. Rest Params ⭐
  6. Arg Default Value ⭐
  7. Arg Destructure ⭐
  8. f Declaration vs Expression
  9. Closure
  10. f call apply bind
  11. Functional Programing

JS Object Property

  1. Property Overview
  2. Property Key
  3. Dot vs Bracket Notation
  4. Create/Delete Property
  5. Get/Set Property
  6. Property Existence
  7. Access Property
  8. List Properties
  9. Property Attributes
  10. Getter/Setter
  11. Property Descriptor
  12. Symbol

JS Object and Inheritance

  1. Object Overview
  2. Object Type
  3. Find Object's Type
  4. Prototype Chain
  5. Create Object
  6. Object Literal Expr
  7. Create Object with Parent X
  8. Get/Set Parent
  9. Show Prototype Chain
  10. Prevent Adding Property
  11. Clone Object
  12. Test Object Equality
  13. Add Method to Prototype

JS Array

  1. Understand JS Array
  2. Create Array
  3. Sparse Array
  4. Array-Like Object
  5. Array How-To

JS Constructor/Class

  1. “this” Binding
  2. What's Constructor?
  3. Property Key "prototype"
  4. Operator “new”
  5. Operator “instanceof”
  6. Property Key “constructor”
  7. Class
  8. Keyword “extends”
  9. Keyword “super”

JS Iterable ⭐

  1. Interface
  2. Iterable
  3. Iterator
  4. Iterator Prototype
  5. for-of Loop
  6. Spread Operator
  7. Generator
  8. Generator Function

JS RegExp

  1. RegExp Tutorial
  2. RegExp Syntax
  3. Regex Find/Replace

JS Number

  1. Format Number
  2. String to Number
  3. Random Number

Misc

  1. Set Object
  2. Map Object
  3. Reflect
  4. Import/Export
  5. Promise
  6. Proxy
  7. Try Catch Throw Finally
  8. ES2015 Features
  9. ES2016, 2017, 2018, 2019
  10. How to Convert ES5 to ES2015
  11. Style Guide
  12. Semicolon Rules
  13. Exclamation Before Function
  14. How to Determine Strict Mode?
  15. x.y.z Associativity
  16. Function Chain
  17. Random Number, Range, Integer, Element
  18. Timing JS Code
  19. Range Function for Array
  20. Tagged Template String
  21. Allowed Characters in Identifier
  22. Encode URL, Escape String

Patreon me at https://www.patreon.com/xahlee or buy it for offline reading. Buy Xah JavaScript Tutorial

Garabato Kid no plugin bcde6
from Garabato Kid comics. https://twitter.com/garabatokid/ Used with permission.

Reference

Here's references used.

Like it? Help me by telling your friends. Or, Put $5 at patreon.

Or, Buy JavaScript in Depth

If you have a question, put $5 at patreon and message me.

Web Dev Tutorials