nothing here more - sorry

EMBARGO!

Journalists and bloggers: please do not publish anything about this until the embargo is lifted!

Please contact the author for more information about when this is.

nothing here more - sorry

http://i.imgur.com/2ZhquUO.png

About the Book

http://i.imgur.com/2ZhquUO.png

Written by Marijn Haverbeke.

Licensed under a Creative Commons attribution-noncommercial license. All code in this book may also be considered licensed under an MIT license.

Illustrations by various artists: Sea of bits (chapter 1) and weresquirrel (chapter 4) by Margarita Martínez and José Menor. Octopuses (chapter 2 and 4) by Jim Tierney. Object with on/off switch (chapter 6) by Dyle MacGregor. Regular expression diagrams in chapter 9 generated with regexper.com by Jeff Avallone. Game concept for chapter 15 by Thomas Palef.

THIS IS A UNNOFICIAL VERSION OF THE BOOK "ELOQUENT JAVASCRIPT". THE OBJECTIVE OF THAT WORK IS EXCLUSIVELY HELP THE READERS TO DOING IT IN A MORE CONFORTABLE WAY.

PLEASE, TAKE A LOOK AT THE ORIGINAL SOURCE AT >>> http://eloquentjavascript.net/, 

OR THE DIRECT LINK TO THE SECOND VERSION IN PROGRESS HERE >>> http://eloquentjavascript.net/

http://i.imgur.com/2ZhquUO.png

  • Share this book

  • License

About the Author

Eric Douglas
Eric Douglas

Remember that do good to others will always be the best thing you could do to yourself <3

Table of Contents

  • Introduction
    • On Programming
    • Why language matters
    • What is JavaScript?
    • Code, and what to do with it
    • Typographic conventions
  • Chapter 1 - Values, Types, and Operators
    • Values
    • Numbers
    • Strings
    • Unary operators
    • Boolean values
    • Undefined values
    • Automatic type conversion
    • Summary
  • Chapter 2 - Program Structure
    • Expressions and statements
    • Variables
    • Keywords and reserved words
    • The environment
    • Functions
    • The console.log function
    • Return values
    • Prompt and Confirm
    • Control flow
    • Conditional execution
    • while and do loops
    • Indenting Code
    • for loops
    • Breaking Out of a Loop
    • Updating variables succinctly
    • Dispatching on a value with switch
    • Capitalization
    • Comments
    • Summary
    • Exercises
  • Chapter 3 - Functions
    • Defining a function
    • Parameters and scopes
    • Nested scope
    • Functions as values
    • Declaration notation
    • The call stack
    • Optional Arguments
    • Closure
    • Recursion
    • Growing functions
    • Functions and side effects
    • Summary
    • Exercises
  • Chapter 4 - Data Structures: Object and Array
    • The weresquirrel
    • Data sets
    • Properties
    • Methods
    • Objects
    • Mutability
    • The Lycanthrope’s log
    • Computing correlation
    • Objects as maps
    • The final analysis
    • Further arrayology
    • Strings and their properties
    • The arguments object
    • The Math object
    • The global object
    • Summary
    • Exercises
  • Chapter 5 - Higher-Order Functions
    • Abstraction
    • Abstracting array traversal
    • Higher-order functions
    • Passing on arguments
    • Example data
    • JSON
    • Filtering an array
    • Transforming with map
    • Summarizing with reduce
    • Composability
    • The cost
    • Great-great-great-great-…
    • Binding
    • Summary
    • Exercises
  • Chapter 6 - The Secret Life of Objects
    • History
    • Methods
    • Prototypes
    • Constructors
    • Overriding derived properties
    • Prototype interference
    • Prototype-less objects
    • Polymorphism
    • Laying out a table
    • Getters and setters
    • Inheritance
    • The instanceof operator
    • Summary
    • Exercises
  • Chapter 7 - Project: Electronic Life
    • Definition
    • Representing space
    • A critter’s programming interface
    • The world object
    • this and its scope
    • Animating life
    • It moves
    • More life forms
    • A more lifelike simulation
    • Action handlers
    • Populating the new world
    • Bringing it to life
    • Exercises
  • Chapter 8 - Bugs and Error Handling
    • Programmer mistakes
    • Strict mode
    • Testing
    • Debugging
    • Error propagation
    • Exceptions
    • Cleaning up after exceptions
    • Selective catching
    • Assertions
    • Summary
    • Exercises
  • Chapter 9 - Regular Expressions
    • Creating a regular expression
    • Testing for matches
    • Matching a set of characters
    • Repeating parts of a pattern
    • Grouping subexpressions
    • Matches and groups
    • The date type
    • Word and string boundaries
    • Choice patterns
    • The mechanics of matching
    • Backtracking
    • The replace method
    • Greed
    • Dynamically creating RegExp objects
    • The search method
    • The lastIndex property
    • Looping over matches
    • Parsing an INI file
    • International characters
    • Summary
    • Exercises
  • Chapter 10 - Modules
    • Why modules help
    • Namespacing
    • Reuse
    • Decoupling
    • Using functions as namespaces
    • Objects as interfaces
    • Detaching from the global scope
    • Evaluating data as code
    • Require
    • Slow-loading modules
    • Interface design
    • Predictability
    • Composability
    • Layered interfaces
    • Summary
    • Exercises
  • Chapter 11 - Project: A Programming Language
    • Parsing
    • The evaluator
    • Special forms
    • The environment
    • Functions
    • Compilation
    • Cheating
    • Exercises
  • Chapter 12 - JavaScript and the Browser
    • Networks and the Internet
    • The Web
    • HTML
    • HTML and JavaScript
    • In the sandbox
    • Compatibility and the browser wars
  • Chapter 13 - 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
  • Chapter 14 - Handling Events
    • Event handlers
    • Events and DOM nodes
    • Event objects
    • Propagation
    • Default actions
    • Key events
    • Mouse clicks
    • Mouse motion
    • Scroll events
    • Focus Events
    • Load Event
    • Script execution timeline
    • Setting timers
    • Debouncing
    • Summary
    • Exercises
  • Chapter 15 - Project: A Platform Game
    • The game
    • The technology
    • Levels
    • Reading a level
    • Actors
    • Encapsulation as a burden
    • Drawing
    • Motion and collision
    • Actors and actions
    • Tracking keys
    • Running the game
    • Exercises

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub