/dev/reading
Category

JavaScript

23 books
Order by
View
by Stephen A. Thomas

You’ve got data to communicate. But what kind of visualization do you choose, how do you build your visualizations, and how do you ensure that they're up to the demands of the Web?

In Data Visualization with JavaScript, you’ll learn how to use JavaScript, HTML, and CSS to build practical visualizations for your data. Step-by-step examples walk you through creating, integrating, and debugging different types of visualizations and you'll be building basic visualizations (like bar, line, and scatter graphs) in no time.

You'll also learn how to:

  • Create tree maps, heat maps, network graphs, word clouds, and timelines
  • Map geographic data, and build sparklines and composite charts
  • Add interactivity and retrieve data with AJAX
  • Manage data in the browser and build data-driven web applications
  • Harness the power of the Flotr2, Flot, Chronoline.js, D3.js, Underscore.js, and Backbone.js libraries

If you already know your way around building a web page but aren’t quite sure how to build a good visualization, Data Visualization with JavaScript will help you get your feet wet without throwing you into the deep end. You’ll soon be well on your way to creating simple, powerful data visualizations.

Download the source code

by Ashley Davis

Data Wrangling with JavaScript is hands-on guide that will teach you how to create a JavaScript-based data processing pipeline, handle common and exotic data, and master practical troubleshooting strategies.

by Marijn Haverbeke

JavaScript lies at the heart of almost every modern web application, from social apps like Twitter to browser-based game frameworks like Phaser and Babylon. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications.

This much anticipated and thoroughly revised third edition of Eloquent JavaScript dives deep into the JavaScript language to show you how to write beautiful, effective code. It has been updated to reflect the current state of JavaScript and web browsers and includes brand-new material on features like class notation, arrow functions, iterators, async functions, template strings, and block scope. A host of new exercises have also been added to test your skills and keep you on track.

As with previous editions, Haverbeke continues to teach through extensive examples and immerses you in code from the start, while exercises and full-chapter projects give you hands-on experience with writing your own programs. You start by learning the basic structure of the JavaScript language as well as control structures, functions, and data structures to help you write basic programs. Then you’ll learn about error handling and bug fixing, modularity, and asynchronous programming before moving on to web browsers and how JavaScript is used to program them. As you build projects such as an artificial life simulation, a simple programming language, and a paint program, you’ll learn how to:

  • Understand the essential elements of programming, including syntax, control, and data
  • Organize and clarify your code with object-oriented and functional programming techniques
  • Script the browser and make basic web applications
  • Use the DOM effectively to interact with browsers
  • Harness Node.js to build servers and utilities

Isn’t it time you became fluent in the language of the Web?

How to improve your JavaScript programs using functional techniques
by Luis Atencio

Functional Programming in JavaScript teaches JavaScript developers functional techniques that will improve extensibility, modularity, reusability, testability, and performance. Through concrete examples and jargon-free explanations, this book teaches you how to apply functional programming to real-life development tasks

by John R. Larsen

Get Programming with JavaScript is a hands-on introduction to programming for readers who have never programmed. You'll be writing your own web apps, games, and programs in no time!

New features of ECMAScript 2015, 2016, and beyond
by JD Isaacks

Get Programming with JavaScript Next introduces the modern age of JavaScript programming with ES6 and ES7 without dragging you through confusing jargon and abstract examples you'll never use. In just 34 quick-fire sessions, you'll quickly be coding with the latest features and functions of ES6 and ES7!

by Eric T. Freeman and Elisabeth Robson

This brain-friendly guide teaches you everything from JavaScript language fundamentals to advanced topics, including objects, functions, and the browser’s document object model. You won’t just be reading—you’ll be playing games, solving puzzles, pondering mysteries, and interacting with JavaScript in ways you never imagined. And you’ll write real code, lots of it, so you can start building your own web applications. Prepare to open your mind as you learn (and nail) key topics including:

  • The inner details of JavaScript
  • How JavaScript works with the browser
  • The secrets of JavaScript types
  • Using arrays
  • The power of functions
  • How to work with objects
  • Making use of prototypes
  • Understanding closures
  • Writing and testing applications

We think your time is too valuable to waste struggling with new concepts. Using the latest research in cognitive science and learning theory to craft a multi-sensory learning experience, Head First JavaScript Programming uses a visually rich format designed for the way your brain works, not a text-heavy approach that puts you to sleep. This book replaces Head First JavaScript, which is now out of print.

by Angus Croll

What if William Shakespeare were asked to generate the Fibonacci series or Jane Austen had to write a factorial program? In If Hemingway Wrote JavaScript, author Angus Croll imagines short JavaScript programs as written by famous wordsmiths. The result is a peculiar and charming combination of prose, poetry, and programming.

The best authors are those who obsess about language—and the same goes for JavaScript developers. To master either craft, you must experiment with language to develop your own style, your own idioms, and your own expressions. To that end, If Hemingway Wrote JavaScript playfully bridges the worlds of programming and literature for the literary geek in all of us.

Featuring original artwork by Miran Lipovača.

"If Hemingway Wrote JavaScript is a strange and beautiful book." —Robin Sloan, author Mr. Penumbra’s 24‑Hour Bookstore

"Will surely delight programmers and give a few belly laughs to literature lovers...an inventive work of fictional humor that takes coding to a whole new literate level." —Foreword Reviews

"Best hypothetical question we've heard in a while." —The Millions

A Build First Approach
by Nicolas G. Bevacqua

The fate of most applications is often sealed before a single line of code has been written. How is that possible? Simply, bad design assures bad results. Good design and effective processes are the foundation on which maintainable applications are built, scaled, and improved. For JavaScript developers, this means discovering the tooling, modern libraries, and architectural patterns that enable those improvements.

JavaScript Application Design: A Build First Approach introduces techniques to improve software quality and development workflow. You'll begin by learning how to establish processes designed to optimize the quality of your work. You'll execute tasks whenever your code changes, run tests on every commit, and deploy in an automated fashion. Then you'll focus on designing modular components and composing them together to build robust applications.

A Hands-On, Project-Based Introduction to Programming
by Nick Morgan

JavaScript Crash Course is a fun-filled, fast-paced introduction to programming with JavaScript. Dive right in and you’ll be writing code, solving problems, and building working web applications and games in no time.

You’ll start by learning fundamental programming concepts, such as variables, arrays, objects, functions, conditionals, loops, classes, and more. Aided by engaging examples and hands-on exercises, you’ll build on this foundation and combine JavaScript with HTML and CSS to create interactive web applications that you can run right away.

Then you’ll put your new skills into play with three substantial projects: a Pong-style game with a virtual opponent, an app that generates electronic music, and a platform for visualizing data fetched from an API.

Along the way, you’ll learn how to:

  • Update web pages in real time by manipulating the Document Object Model
  • Trigger functions in response to events like key presses and mouse clicks
  • Generate graphics and animations with JavaScript and HTML’s Canvas element
  • Visualize data with the D3.js library and scalable vector graphics (SVG)
  • Make electronic music with Tone.js and the Web Audio API

If you’ve been thinking about digging into programming, JavaScript Crash Course will get you writing real programs fast. Why wait any longer? Jump on your magic carpet and ride!

Learn JavaScript quickly by building fun, interactive, and dynamic apps, games, and pages
by Laurence Lars Svekis, Maaike van Putten and Codestars By Rob Percival

This book demonstrates the capabilities of JavaScript for web application development by combining theoretical learning with code exercises and fun projects that you can challenge yourself with. The guiding principle of the book is to show how straightforward JavaScript techniques can be used to make web apps ranging from dynamic websites to simple browser-based games.

JavaScript from Beginner to Professional focuses on key programming concepts and Document Object Model manipulations that are used to solve common problems in professional web applications. These include data validation, manipulating the appearance of web pages, working with asynchronous and concurrent code.

The book uses project-based learning to provide context for the theoretical components in a series of code examples that can be used as modules of an application, such as input validators, games, and simple animations. This will be supplemented with a brief crash course on HTML and CSS to illustrate how JavaScript components fit into a complete web application.

As you learn the concepts, you can try them in your own editor or browser console to get a solid understanding of how they work and what they do. By the end of this JavaScript book, you will feel confident writing core JavaScript code and be equipped to progress to more advanced libraries, frameworks, and environments such as React, Angular, and Node.js.

What you will learn

  • Use logic statements to make decisions within your code
  • Save time with JavaScript loops by avoiding writing the same code repeatedly
  • Use JavaScript functions and methods to selectively execute code
  • Connect to HTML5 elements and bring your own web pages to life with interactive content
  • Make your search patterns more effective with regular expressions
  • Explore concurrency and asynchronous programming to process events efficiently and improve performance
  • Get a head start on your next steps with primers on key libraries, frameworks, and APIs

Who this book is for

This book is for people who are new to JavaScript (JS) or those looking to build up their skills in web development. Basic familiarity with HTML & CSS would be beneficial.

Whether you are a junior or intermediate developer who needs an easy-to-understand practical guide for JS concepts, a developer who wants to transition into working with JS, or a student studying programming concepts using JS, this book will prove helpful.

Master the World's Most-Used Programming Language
by David Flanagan

JavaScript is the programming language of the web and is used by more software developers today than any other programming language. For nearly 25 years this best seller has been the go-to guide for JavaScript programmers. The seventh edition is fully updated to cover the 2020 version of JavaScript, and new chapters cover classes, modules, iterators, generators, Promises, async/await, and metaprogramming. You’ll find illuminating and engaging example code throughout.

This book is for programmers who want to learn JavaScript and for web developers who want to take their understanding and mastery to the next level. It begins by explaining the JavaScript language itself, in detail, from the bottom up. It then builds on that foundation to cover the web platform and Node.js.

Topics include:

  • Types, values, variables, expressions, operators, statements, objects, and arrays
  • Functions, classes, modules, iterators, generators, Promises, and async/await
  • JavaScript’s standard library: data structures, regular expressions, JSON, i18n, etc.
  • The web platform: documents, components, graphics, networking, storage, and threads
  • Node.js: buffers, files, streams, threads, child processes, web clients, and web servers
  • Tools and language extensions that professional JavaScript developers rely on
A JavaScript and React Developer's Guide
by Addy Osmani

Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patterns is the ideal place to start.

Author Addy Osmani shows you how to apply modern design patterns to JavaScript and React—including modules, mixins, observers, and mediators. You'll learn about performance and rendering patterns such as server-side rendering and Islands architecture. You'll also learn how architectural patterns like MVC, MVP, and MVVM are useful from the perspective of a modern web application developer.

This book explores:

  • Architectural patterns for structuring your components and apps
  • More than 20 design patterns in JavaScript and React, applicable for developers at any level
  • Different pattern categories including creational, structural, and behavioral
  • Essential performance patterns including dynamic imports and code-splitting
  • Rendering patterns such as server-side rendering, hydration, Islands architecture, and more

Additionally, you'll explore modern JavaScript syntax like JavaScript modules, React patterns like Hooks, higher-order components (HOCs), and more, to stay ahead in the ever-evolving world of web development.

by Nicholas C. Zakas

If you've used a more traditional object-oriented language, such as C++ or Java, JavaScript probably doesn't seem object-oriented at all. It has no concept of classes, and you don't even need to define any objects in order to write code. But don't be fooled—JavaScript is an incredibly powerful and expressive object-oriented language that puts many design decisions right into your hands.

In The Principles of Object-Oriented JavaScript, Nicholas C. Zakas thoroughly explores JavaScript's object-oriented nature, revealing the language's unique implementation of inheritance and other key characteristics. You'll learn:

  • The difference between primitive and reference values
  • What makes JavaScript functions so unique
  • The various ways to create objects
  • How to define your own constructors
  • How to work with and understand prototypes
  • Inheritance patterns for types and objects

The Principles of Object-Oriented JavaScript will leave even experienced developers with a deeper understanding of JavaScript. Unlock the secrets behind how objects work in JavaScript so you can write clearer, more flexible, and more efficient code.

by Matt Frisbie

Professional JavaScript for Web Developers, 5th edition, is the gold-standard in intermediate-to-advanced JavaScript programming development books. The author dives directly into the inner workings of JavaScript to help you clean up your code and become a more sophisticated and talented JavaScript developer. From object-oriented programming and inheritance to combining JavaScript with HTML and other markup languages, expert computer engineer Matt Frisbie walks you through everything you need to know to level-up your JavaScript game.

This new edition is updated to include ECMAScript 2023 and later standard releases, the most useful techniques, and a relentless focus on code that works seamlessly in mobile web browsers and with the latest common frameworks and libraries. With this book, you will:

  • Get up to date with ECMAScript 2023
  • Get acquainted with the newest frameworks and libraries
  • Explore advanced topics such as web animation, workers, and the latest APIs
  • Get a head start on future ES releases
  • Learn to use modern syntax and best practices
  • Understand how to optimize performance in JavaScript applications
  • Master asynchronous programming patterns using promises, generators, and async/await

Perfect for those who think they already know JavaScript “pretty well,” Professional JavaScript for Web Developers, 5th edition, is the pro-level update that intermediate and advanced web developers have been waiting for.

Detailed Solutions in Eight Programming Languages
by Jan Goyvaerts and Steven Levithan

Take the guesswork out using regular expressions to search and manipulate text. With this updated cookbook, you have access to hundreds of proven recipes for today's most popular programming languages - including C#, Java, JavaScript (including XRegExp), Perl, PHP, Python, Ruby, and VB.NET. As useful as regular expressions can be for programmers, their power doesn't come worry-free. This guide will deepen your understanding, no matter how much experience you have with this reliable tool. You'll learn powerful new tricks, steer clear of flavor-specific gotchas, and save valuable time with this huge library of solutions to difficult, real-world problems.

Understand the basics of regular expressions through a concise tutorial Use regular expressions effectively in several programming and scripting languages Learn how to validate and format input Manage words, lines, special characters, and numerical values Find solutions for using regular expressions in URLs, paths, markup, and data exchange Discover the nuances of more advanced regex features Experience how regular expressions' APIs, syntax, and behavior differ from language to language Write better regular expressions for custom needs

by John Resig, Bear Bibeault and Josip Maras

More than ever, the web is a universal platform for all types of applications, and JavaScript is the language of the web. If you're serious about web development, it's not enough to be a decent JavaScript coder. You need to be ninja-stealthy, efficient, and ready for anything. This book shows you how.

by Lucas da Costa

Automated testing will help you write high-quality software in less time, with more confidence, fewer bugs, and without constant manual oversight.

Testing JavaScript Applications is a guide to building a comprehensive and reliable JS application testing suite, covering both how to write tests and how JS testing tools work under the hood. You’ll learn from Lucas de Costa, a core contributor to popular JS testing libraries, as he shares a quality mindset for making testing decisions that deliver a real contribution to your business. You’ll benefit from informative explanations and diagrams, easily-transferable code samples, and useful tips on using the latest and most consolidated libraries and frameworks of the JavaScript ecosystem.

by Luis Atencio

Whether building interactive browser-based applications or creating server-side applications in Node, JavaScript is the most widely used language for web programming. With new features, language improvements, paradigms, and potential use cases appearing regularly, there’s never been a more exciting time to be a JavaScript developer. In

The Joy of JavaScript, author and JavaScript expert Luis Atencio teaches you key design concepts that lead to clean, lean, modular, and easy-to-maintain code.

Ace the Coding Interview with Python and JavaScript
by Al Sweigart

Recursion has an intimidating reputation: it’s considered to be an advanced computer science topic frequently brought up in coding interviews. But there’s nothing magical about recursion.

The Recursive Book of Recursion uses Python and JavaScript examples to teach the basics of recursion, exposing the ways that it’s often poorly taught and clarifying the fundamental principles of all recursive algorithms. You’ll learn when to use recursive functions (and, most importantly, when not to use them), how to implement the classic recursive algorithms often brought up in job interviews, and how recursive techniques can help solve countless problems involving tree traversal, combinatorics, and other tricky topics.   This project-based guide contains complete, runnable programs to help you learn:

  • How recursive functions make use of the call stack, a critical data structure almost never discussed in lessons on recursion
  • How the head-tail and “leap of faith” techniques can simplify writing recursive functions
  • How to use recursion to write custom search scripts for your filesystem, draw fractal art, create mazes, and more
  • How optimization and memoization make recursive algorithms more efficient

Al Sweigart has built a career explaining programming concepts in a fun, approachable manner. If you’ve shied away from learning recursion but want to add this technique to your programming toolkit, or if you’re racing to prepare for your next job interview, this book is for you.

by Ben Vinegar and Anton Kovalyov

Third-Party JavaScript guides web developers through the complete development of a full-featured third-party JavaScript application. You'll learn dozens of techniques for developing widgets that collect data for analytics, provide helpful overlays and dialogs, or implement features like chat or commenting. The concepts and examples throughout this book represent the best practices for this emerging field, based on thousands of real-world dev hours and results from millions of users.

The Definitive Guide for JavaScript Developers
by Nicholas C. Zakas

ECMAScript 6 represents the biggest update to the core of JavaScript in the history of the language. In Understanding ECMAScript 6, expert developer Nicholas C. Zakas provides a complete guide to the object types, syntax, and other exciting changes that ECMAScript 6 brings to JavaScript. Every chapter is packed with example code that works in any JavaScript environment so you’ll be able to see new features in action. You’ll learn:

  • How ECMAScript 6 class syntax relates to more familiar JavaScript concepts
  • What makes iterators and generators useful
  • How arrow functions differ from regular functions
  • Ways to store data with sets, maps, and more
  • The power of inheritance
  • How to improve asynchronous programming with promises
  • How modules change the way you organize code

Whether you’re a web developer or a Node.js developer, you’ll find Understanding ECMAScript 6 indispensable on your journey from ECMAScript 5 to ECMAScript 6.