Eloquent JavaScript 1st edition by Marijn Haverbeke – Ebook PDF Instant Download/DeliveryISBN: 1718504110, 9781718504110
Full download Eloquent JavaScript 1st edition after payment.
Product details:
ISBN-10 : 1718504110
ISBN-13 : 9781718504110
Author: Marijn Haverbeke
Start building beautiful web applications in JavaScript with the bestselling introduction to the language, updated with new features, fresh exercises, and fun projects. JavaScript, the programming language that allows us to add programs to web pages, lies at the heart of almost every modern web application, from social media sites to browser-based games. Just about every device can run it, making it a great choice for writing universally useful code. The fourth edition of this classic textbook takes you on a journey through the language of the web, starting from its basic elements and building up to engaging, complete programs. The author’s personal experiences from years of maintaining popular open source projects enliven the text with practical insights and examples. This edition of Eloquent JavaScript updates the book to describe the 2024 version of JavaScript, and shifts the attention given to some topics to better reflect current development practices. The text takes a practical approach to teaching, rooting theory in plenty of motivating examples. The first half of the book describes the fundamentals of the language, whereas the second half shows how to apply it in two programming environments: the web browser and Node.js. Five project chapters show how to build bigger programs, working through these projects in a piecemeal, conversational way. They include a pathfinding robot, a small programming language, a platform game, a pixel drawing program, and a simple dynamic website. Exercises provided at the end of most chapters will challenge you to creatively apply the concepts and techniques introduced. The book’s companion website provides an interactive environment for working on these exercises and playing with the example programs. Whether you’re looking to learn JavaScript or to deepen your programming skills, you’ll find this book full of stimulating material. Updated to ECMAScript 2024
Eloquent JavaScript 1st table of contents:
PART I: LANGUAGE
1. VALUES, TYPES, AND OPERATORS
Values
Numbers
Arithmetic
Special Numbers
Strings
Unary Operators
Boolean Values
Comparison
Logical Operators
Empty Values
Automatic Type Conversion
Short-Circuiting of Logical Operators
Summary
2. PROGRAM STRUCTURE
Expressions and Statements
Bindings
Binding Names
The Environment
Functions
The console.log Function
Return Values
Control Flow
Conditional Execution
while and do Loops
Indenting Code
for Loops
Breaking Out of a Loop
Updating Bindings Succinctly
Dispatching on a Value with switch
Capitalization
Comments
Summary
Exercises
Looping a Triangle
FizzBuzz
Chessboard
3. FUNCTIONS
Defining a Function
Bindings and Scopes
Nested Scope
Functions as Values
Declaration Notation
Arrow Functions
The Call Stack
Optional Arguments
Closure
Recursion
Growing Functions
Functions and Side Effects
Summary
Exercises
Minimum
Recursion
Bean Counting
4. DATA STRUCTURES: OBJECTS AND ARRAYS
The Weresquirrel
Datasets
Properties
Methods
Objects
Mutability
The Lycanthrope’s Log
Computing Correlation
Array Loops
The Final Analysis
Further Arrayology
Strings and Their Properties
Rest Parameters
The Math Object
Destructuring
Optional Property Access
JSON
Summary
Exercises
The Sum of a Range
Reversing an Array
A List
Deep Comparison
5. HIGHER-ORDER FUNCTIONS
Abstraction
Abstracting Repetition
Higher-Order Functions
Script Dataset
Filtering Arrays
Transforming with map
Summarizing with reduce
Composability
Strings and Character Codes
Recognizing Text
Summary
Exercises
Flattening
Your Own Loop
Everything
Dominant Writing Direction
6. THE SECRET LIFE OF OBJECTS
Abstract Data Types
Methods
Prototypes
Classes
Private Properties
Overriding Derived Properties
Maps
Polymorphism
Getters, Setters, and Statics
Symbols
The Iterator Interface
Inheritance
The instanceof Operator
Summary
Exercises
A Vector Type
Groups
Iterable Groups
7. PROJECT: A ROBOT
Meadowfield
The Task
Persistent Data
Simulation
The Mail Truck’s Route
Pathfinding
Exercises
Measuring a Robot
Robot Efficiency
Persistent Group
8. BUGS AND ERRORS
Language
Strict Mode
Types
Testing
Debugging
Error Propagation
Exceptions
Cleaning Up After Exceptions
Selective Catching
Assertions
Summary
Exercises
Retry
The Locked Box
9. REGULAR EXPRESSIONS
Creating a Regular Expression
Testing for Matches
Sets of Characters
International Characters
Repeating Parts of a Pattern
Grouping Subexpressions
Matches and Groups
The Date Class
Boundaries and Look-Ahead
Choice Patterns
The Mechanics of Matching
Backtracking
The replace Method
Greed
Dynamically Creating RegExp Objects
The search Method
The lastIndex Property
Parsing an INI File
Code Units and Characters
Summary
Exercises
Regexp Golf
Quoting Style
Numbers Again
10. MODULES
Modular Programs
ES Modules
Packages
CommonJS Modules
Building and Bundling
Module Design
Summary
Exercises
A Modular Robot
Roads Module
Circular Dependencies
11. ASYNCHRONOUS PROGRAMMING
Asynchronicity
Callbacks
Promises
Failure
Carla
Breaking In
async Functions
Generators
A Corvid Art Project
The Event Loop
Asynchronous Bugs
Summary
Exercises
Quiet Times
Real Promises
Building Promise.all
12. PROJECT: A PROGRAMMING LANGUAGE
Parsing
The Evaluator
Special Forms
The Environment
Functions
Compilation
Cheating
Exercises
Arrays
Closure
Comments
Fixing Scope
PART II: BROWSER
13. JAVASCRIPT AND THE BROWSER
Networks and the Internet
The Web
HTML
HTML and JavaScript
In the Sandbox
Compatibility and the Browser Wars
14. THE DOCUMENT OBJECT MODEL
Document Structure
Trees
The Standard
Moving Through the Tree
Finding Elements
Changing the Document
Creating Nodes
Attributes
Layout
Styling
Cascading Styles
Query Selectors
Positioning and Animating
Summary
Exercises
Build a Table
Elements by Tag Name
The Cat’s Hat
15. HANDLING EVENTS
Event Handlers
Events and DOM Nodes
Event Objects
Propagation
Default Actions
Key Events
Pointer Events
Mouse Clicks
Mouse Motion
Touch Events
Scroll Events
Focus Events
Load Event
Events and the Event Loop
Timers
Debouncing
Summary
Exercises
Balloon
Mouse Trail
Tabs
16. PROJECT: A PLATFORM GAME
The Game
The Technology
Levels
Reading a Level
Actors
Drawing
Motion and Collision
Actor Updates
Tracking Keys
Running the Game
Exercises
Game Over
Pausing the Game
A Monster
17. DRAWING ON CANVAS
SVG
The canvas Element
Lines and Surfaces
Paths
Curves
Drawing a Pie Chart
Text
Images
Transformation
Storing and Clearing Transformations
Back to the Game
Choosing a Graphics Interface
Summary
Exercises
Shapes
The Pie Chart
A Bouncing Ball
Precomputed Mirroring
18. HTTP AND FORMS
The Protocol
Browsers and HTTP
Fetch
HTTP Sandboxing
Appreciating HTTP
Security and HTTPS
Form Fields
Focus
Disabled Fields
The Form as a Whole
Text Fields
Checkboxes and Radio Buttons
Select Fields
File Fields
Storing Data Client-Side
Summary
Exercises
Content Negotiation
A JavaScript Workbench
Conway’s Game of Life
19. PROJECT: A PIXEL ART EDITOR
Components
The State
DOM Building
The Canvas
The Application
Drawing Tools
Saving and Loading
Undo History
Let’s Draw
Why Is This So Hard?
Exercises
Keyboard Bindings
Efficient Drawing
Circles
Proper Lines
PART III: NODE
20. NODE.JS
Background
The node Command
Modules
Installing with NPM
Package Files
Versions
The Filesystem Module
The HTTP Module
Streams
A File Server
Summary
Exercises
Search Tool
Directory Creation
A Public Space on the Web
21. PROJECT: SKILL-SHARING WEBSITE
Design
Long Polling
HTTP Interface
The Server
Routing
Serving Files
Talks as Resources
Long Polling Support
The Client
HTML
Actions
Rendering Components
Polling
The Application
Exercises
Disk Persistence
Comment Field Resets
22. JAVASCRIPT AND PERFORMANCE
Staged Compilation
Graph Layout
Defining a Graph
Force-Directed Layout
Avoiding Work
Profiling
Function Inlining
Dynamic Types
Summary
Exercises
Prime Numbers
Faster Prime Numbers
APPENDIX: EXERCISE HINTS
Chapter 2: Program Structure
Looping a Triangle
FizzBuzz
Chessboard
Chapter 3: Functions
Minimum
Recursion
Bean Counting
Chapter 4: Data Structures: Objects and Arrays
The Sum of a Range
Reversing an Array
A List
Deep Comparison
Chapter 5: Higher-Order Functions
Everything
Dominant Writing Direction
Chapter 6: The Secret Life of Objects
A Vector Type
Groups
Iterable Groups
Chapter 7: Project: A Robot
Measuring a Robot
Robot Efficiency
Persistent Group
Chapter 8: Bugs and Errors
Retry
The Locked Box
Chapter 9: Regular Expressions
Quoting Style
Numbers Again
Chapter 10: Modules
A Modular Robot
Roads Module
Circular Dependencies
Chapter 11: Asynchronous Programming
Quiet Times
Real Promises
Building Promise.all
Chapter 12: Project: A Programming Language
Arrays
Closure
Comments
Fixing Scope
Chapter 14: The Document Object Model
Build a Table
Elements by Tag Name
The Cat’s Hat
Chapter 15: Handling Events
Balloon
Mouse Trail
Tabs
Chapter 16: Project: A Platform Game
Pausing the Game
A Monster
Chapter 17: Drawing on Canvas
Shapes
The Pie Chart
A Bouncing Ball
Precomputed Mirroring
Chapter 18: HTTP and Forms
Content Negotiation
A JavaScript Workbench
Conway’s Game of Life
Chapter 19: Project: A Pixel Art Editor
Keyboard Bindings
Efficient Drawing
Circles
Proper Lines
Chapter 20: Node.js
Search Tool
Directory Creation
A Public Space on the Web
Chapter 21: Project: Skill-Sharing Website
Disk Persistence
Comment Field Resets
Chapter 22: JavaScript and Performance
Prime Numbers
Faster Prime Numbers
People also search for Eloquent JavaScript 1st:
eloquent javascript reddit
eloquent javascript 3rd edition pdf
eloquent javascript review
eloquent javascript exercises
eloquent javascript epub
Tags: Eloquent, JavaScript, Marijn Haverbeke, maintaining popular