Created markdown files for different chapters

master
Jason Zhu 2021-01-10 19:40:01 +11:00
parent 38cf678ec3
commit c88567c085
9 changed files with 553 additions and 0 deletions

View File

@ -0,0 +1,61 @@
# Chapter 11. The JavaScript Standard Library
## 11.1 Sets and Maps
### 11.1.1 The Set Class
### 11.1.2 The Map Class
### 11.1.3 WeakMap and WeakSet
## 11.2 Typed Arrays and Binary Data
### 11.2.1 Typed Array Types
### 11.2.2 Creating Typed Arrays
### 11.2.3 Using Typed Arrays
### 11.2.4 Typed Array Methods and Properties
### 11.2.5 DataView and Endianness
## 11.3 Pattern Matching with Regular Expressions
### 11.3.1 Defining Regular Expressions
### 11.3.2 String Methods for Pattern Matching
### 11.3.3 The RegExp Class
## 11.4 Dates and Times
### 11.4.1 Timestamps
### 11.4.2 Data Arithmetic
### 11.4.3 Formatting and Parsing Date Strings
## 11.5 Error Classes
## 11.6 JSON Serialization and Parsing
### 11.6.1 JSON Customizations
## 11.7 The Internationalization API
### 11.7.1 Formatting Numbers
### 11.7.2 Formatting Dates and Times
### 11.7.3 Comparing Strings
## 11.8 The Console API
### 11.8.1 Formatted Output with Console
## 11.9 URL APIs
### 11.9.1 Legacy URL Functions
## 11.10 Timers

View File

@ -0,0 +1,23 @@
# Chapter 12. Iterators and Generators
## 12.1 How Iterators Work
## 12.2 Implementing Iterable Objects
### 12.2.1 “Closing” an Iterator: The Return Method
## 12.3 Generators
### 12.3.1 Generator Examples
### 12.3.2 yield* and Recursive Generators
## 12.4 Advanced Generator Features
### 12.4.1 The Return Value of a Generator Function
### 12.4.2 The Value of a yield Expression
### 12.4.3 The return() and throw() Methods of a Generator
### 12.4.4 A Final Note About Generators

View File

@ -0,0 +1,45 @@
# Chapter 13. Asynchronous JavaScript
## 13.1 Asynchronous Programming with Callbacks
### 13.1.1 Timers
### 13.1.2 Events
### 13.1.4 Callbacks and Events in Node
## 13.2 Promises
### 13.2.1 Using Promises
### 13.2.2 Chaining Promises
### 13.2.3 Resolving Promises
### 13.2.4 More on Promises and Errors
### 13.2.5 Promises in Parallel
### 13.2.6 Making Promises
### 13.2.7 Promises in Sequence
## 13.3 async and awit
### 13.3.1 await Expression
### 13.3.2 async Functions
### 13.3.3 Awaiting Multiple Promises
### 13.3.4 Implementation Details
## 13.4 Asynchronous Iteration
### 13.4.1 The for/await Loop
### 13.4.2 Asynchronous Iterators
### 13.4.3 Asynchronous Generators
### 13.4.4 Implementing Asynchronous Iterators

View File

@ -0,0 +1,33 @@
# Chapter 14. Metaprogramming
## 14.1 Property Attributes
## 14.2 Object Extensibility
## 14.3 The prototype Attribute
## 14.4 Well-Known Symbols
### 14.4.1 Symbol.iterator and Symbol.asyncIterator
### 14.4.2 Symbol.hasInstance
### 14.4.3 Symbol.toStringTag
### 14.4.4 Symbol.species
### 14.4.5 Symbol.isConcatSpreadable
### 14.4.6 Pattern-Matching Symbols
### 14.4.7 Symbol.toPrimitive
### 14.4.8 Symbol.unscopables
## 14.5 Template Tags
## 14.6 The Reflect API
## 14.7 Proxy Objects
### 14.7.1 Proxy Invariants

View File

@ -0,0 +1,155 @@
# Chapter 15. JavaScript in Web Browsers
## 15.1 Web Programming Basics
### 15.1.1 JavaScript in HTML <script> Tags
### 15.1.2 The Document Object Model
### 15.1.3 The Global Object in Web Browsers
### 15.1.4 Scripts Share a Namespace
### 15.1.5 Execution of JavaScript Programs
### 15.1.6 Program Input and Output
### 15.1.7 Program Errors
### 15.1.8 The Web Security Model
## 15.2 Events
### 15.2.1 Event Categories
### 15.2.2 Registering Event Handlers
### 15.2.3 Event Handler Invocation
### 15.2.4 Event Propagation
### 15.2.5 Event Cancellation
### 15.2.6 Dispatching Custom Events
## 15.3 Scripting Documents
### 15.3.1 Selecting Document Elements
### 15.3.2 Document Structure and Traversal
### 15.3.3 Attributes
### 15.3.4 Element Content
### 15.3.5 Creating, Inserting, and Deleting Nodes
### 15.3.6 Example: Generating a Table of Contents
## 15.4 Scripting CSS
### 15.4.1 CSS Classes
### 15.4.2 Inline Styles
### 15.4.3 Computed Styles
### 15.4.4 Scripting Stylesheets
### 15.4.5 CSS Animations and Events
## 15.5 Document Geometry and Scrolling
### 15.5.1 Document Coordinates and Viewport Coordinates
### 15.5.2 Querying the Geometry of an Element
### 15.5.3 Determining the Element at a Point
### 15.5.4 Scrolling
### 15.5.5 Viewport Size, Content Size, and Scroll Position
## 15.6 Web Components
### 15.6.1 Using Web Components
### 15.6.2 HTML Templates
### 15.6.3 Custom Elements
### 15.6.4 Shadow DOM
### 15.6.5 Example: a <search-box> Web Component
## 15.7 SVG: Scalable Vector Graphics
### 15.7.1 SVG in HTML
### 15.7.2 Scripting SVG
### 15.7.3 Creating SVG Images with JavaScript
## 15.8 Graphics in a <canvas>
### 15.8.1 Paths and Polygons
### 15.8.2 Canvas Dimensions and Coordinates
### 15.8.3 Graphics Attributes
### 15.8.4 Canvas Drawing Operations
### 15.8.5 Coordinate System Transforms
### 15.8.6 Clipping
### 15.8.7 Pixel Manipulation
## 15.9 Audio APIs
### 15.9.1 The Audio() Constructor
### 15.9.2 The WebAudio API
## 15.10 Location, Navigation, and History
### 15.10.1 Loading New Documents
### 15.10.2 Browsing History
### 15.10.3 History Management with hashchange Events
### 15.10.4 History Management with pushState()
## 15.11 Networking
### 15.11.1 fetch()
### 15.11.2 Server-Sent Events
### 15.11.3 WebSockets
## 15.12 Storage
### 15.12.1 localStorage and sessionStorage
### 15.12.2 Cookies
### 15.12.3 IndexedDB
## 15.13 Worker Threads and Messaging
### 15.13.1 Worker Objects
### 15.13.2 The Global Object in Workers
### 15.13.3 Importing Code into a Worker
### 15.13.4 Worker Execution Model
### 15.13.5 postMessage(), MessagePorts, and MessageChannels
### 15.13.6 Cross-Origin Messaging with postMessage()
## 15.14 Example: The Mandelbrot Set

View File

@ -0,0 +1,71 @@
# Chapter 16. Server-Side JavaScript with Node
## 16.1 Node Programming Basics
### 16.1.1 Console Output
### 16.1.2 Command-Line Arguments and Environment Variables
### 16.1.3 Program Life Cycle
### 16.1.4 Node Modules
### 16.1.5 The Node Package Manager
## 16.2 Node Is Asynchronous by Default
## 16.3 Buffers
## 16.4 Events and EventEmitter
## 16.5 Streams
### 16.5.1 Pipes
### 16.5.2 Asynchronous Iteration
### 16.5.3 Writing to Streams and Handling Backpressure
### 16.5.4 Reading Streams with Events
## 16.6 Process, CPU, and Operating System Details
## 16.7 Working with Files
### 16.7.1 Paths, File Descriptors, and FileHandles
### 16.7.2 Reading Files
### 16.7.3 Writing Files
### 16.7.4 File Operations
### 16.7.5 File Metadata
### 16.7.6 Working with Directories
## 16.8 HTTP Clients and Servers
## 16.9 Non-HTTP Network Servers and Clients
## 16.10 Working with Child Processes
### 16.10.1 execSync() and execFileSync()
### 16.10.2 exec() and execFile()
### 16.10.3 spawn()
### 16.10.4 fork()
## 16.11 Worker Threads
### 16.11.1 Creating Workers and Passing Messages
### 16.11.2 The Worker Execution Environment
### 16.11.3 Communication Channels and MessagePorts
### 16.11.4 Transferring MessagePorts and Typed Arrays
### 16.11.5 Sharing Typed Arrays Between Threads

View File

@ -0,0 +1,85 @@
# Chapter 4. Expressions and Operators
## 4.1 Primary Expressions
## 4.2 Object and Array Initializers
## 4.3 Function Definition Expressions
## 4.4 Property Access Expressions
### 4.4.1 Conditional Property Access
## 4.5 Invocation Expressions
### 4.5.1 Conditional Invocation
## 4.6 Object Creation Expressions
## 4.7 Operator Overview
### 4.7.1 Number of Operands
### 4.7.2 Operand and Result Type
### 4.7.3 Operator Side Effects
### 4.7.4 Operator Precedence
### 4.7.5 Operator Associativity
### 4.7.6 Order of Evaluation
## 4.8 Arithmetic Expressions
### 4.8.1 The + Operator
### 4.8.2 Unary Arithmetic Operators
### 4.8.3 Bitwise Operators
## 4.9 Relational Expressions
### 4.9.1 Equality and Inequality Operators
### 4.9.2 Comparison Operators
### 4.9.3 The in Operator
### 4.9.4 The instanceof Operator
## 4.10 Logical Expressions
### 4.10.1 Logical AND (&&)
### 4.10.2 Logical OR (||)
### 4.10.3 Logical NOT (!)
## 4.11 Assignment Expressions
### 4.11.1 Assignment with Operation
## 4.12 Evaluation Expressions
### 4.12.1 eval()
### 4.12.2 Global eval()
### 4.12.3 Strict eval()
## 4.13 Miscellaneous Operators
### 4.13.1 The Conditional Operator (?:)
### 4.13.2 First-Defined (??)
### 4.13.3 The typeof Operator
### 4.13.4 The delete Operator
### 4.13.5 The await Operator
### 4.13.6 The void Operator
### 4.13.7 The comma Operator (,)

View File

@ -0,0 +1,59 @@
# Chapter 5. Statements
## 5.1 Expression Statements
## 5.2 Compound and Empty Statements
## 5.3 Conditionals
### 5.3.1 if
### 5.3.2 else if
### 5.3.3 switch
## 5.4 Loops
### 5.4.1 while
### 5.4.2 do/while
### 5.4.3 for
### 5.4.4 for/of
### 5.4.5 for/in
## 5.5 Jumps
### 5.5.1 Labeled Statements
### 5.5.2 break
### 5.5.3 continue
### 5.5.4 return
### 5.5.5 yield
### 5.5.6 throw
### 5.5.7 try/catch/finally
## 5.6 Miscellaneous Statements
### 5.6.1 with
### 5.6.2 debugger
### 5.6.3 “use strict”
## 5.7 Declarations
### 5.7.1 const, let, and var
### 5.7.2 function
### 5.7.3 class
### 5.7.4 import and export

View File

@ -0,0 +1,21 @@
# Chapter 6. Objects
## 6.1 Introduction to Objects
## 6.2 Creating Objects
## 6.3 Querying and Setting Properties
## 6.4 Deleting Properties
## 6.5 Testing Properties
## 6.6 Enumerating Properties
## 6.7 Extending Objects
## 6.8 Serializing Objects
## 6.9 Object Methods
## 6.10 Extended Object Literal Syntax