GoalKicker.com, 2018. — 484 p.
The JavaScript Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow. Text content is released under Creative Commons BY-SA. See credits at the end of this book whom contributed to the various chapters. Images may be copyright of their respective owners unless otherwise specified.
Book created for educational purposes and is not affiliated with HTML5 Canvas group(s), company(s) nor Stack Overflow. All trademarks belong to their respective company owners.
Getting started with JavaScript
JavaScript Variables
Built-in Constants
Datatypes in JavaScript
Arithmetic (Math)
Bitwise operators
Strings
Date
Date Comparison
Comparison Operations
Constructor functions
Conditions
Comments
Arrays
Objects
Declarations and Assignments
Loops
Functions
Functional JavaScript
Prototypes, objects
Classes
Namespacing
Callbacks
Context (this)
Setters and Getters
Events
Inheritance
Method Chaining
Intervals and Timeouts
Console
Regular expressions
Cookies
Data attributes
JSON
AJAX
Enumerations
Map
Timestamps
Unary Operators
Error Handling
Generators
Promises
Async functions (async/await)
Set
Modals - Prompts
execCommand and contenteditable
History
Navigator Object
BOM (Browser Object Model)
The Event Loop
Strict mode
Custom Elements
Data Manipulation
Binary Data
Template Literals
Fetch
Scope
Modules
Screen
Variable coercion/conversion
Destructuring assignment
Web Storage
WebSockets
Arrow Functions
Workers
Creational Design Patterns
requestAnimationFrame
Global error handling in browsers
Tail Call Optimization
Detecting browser
Symbols
Transpiling
Unit Testing JavaScript
Debugging
Automatic Semicolon Insertion - ASI
Localization
Geolocation
IndexedDB
Modularization Techniques
Proxy
.postMessage() and MessageEvent
WeakMap
WeakSet
Escape Sequences
Behavioral Design Patterns
Server-sent events
Async Iterators
How to make iterator usable inside async callback function
Tilde ~
Bitwise Operators - Real World Examples (snippets)
Using JavaScript to get/set CSS custom variables
Selection API
File API, Blobs and FileReaders
Notifications API
Vibration API
Battery Status API
Fluent API
Web Cryptography API
Security issues
Same Origin Policy & Cross-Origin Communication
Evaluating JavaScript
Linters - Ensuring code quality
Anti-patterns
Performance Tips
Memory efficiency