Our Ironclad Guarantee
You must be satisfied. Try our print books for 30 days or our eBooks for 14 days. If they aren't the best you've ever used, you can return the books or cancel the eBooks for a prompt refund. No questions asked!
Today, JavaScript is used on most of the pages of a modern website, from small individual sites to the largest commercial sites. And wherever JavaScript is used, you’ll often find jQuery, a classic JavaScript library. That’s why every web developer should know how to use JavaScript for what it does best and jQuery for what it does best. Now, this one book will help you master all of the JavaScript and jQuery skills that every web developer should have.
Go to our instructor’s site to learn more about this book and its instructor’s materials.
If you are new to web design or an old pro like me, this book is a must-have in my opinion. I love how it starts out with the basics and then moves on to the good stuff. Each chapter is full of examples and sample code showing you how to do the most common techniques that you will face as a web developer or designer. I have not seen a better book on the subject."
To present the JavaScript and jQuery skills that you need in a manageable progression, this book is divided into four sections. These sections represent the levels of expertise that you’ll develop with this book.
Section 1 presents a 7-chapter course in JavaScript that gets you off to a great start. This section works for programming novices as well as experienced programmers because it lets you set your own pace. Once you finish it, you’ll be able to develop, test, and debug JavaScript applications. And you’ll have a solid set of skills for getting the most from jQuery.
Once you know the JavaScript essentials, the 4 chapters in section 2 present the jQuery skills that you’re most likely to use. The first chapter in this section presents the core jQuery skills. Then, the next 3 chapters focus on effects and animations, forms and data validation, jQuery plugins, and jQuery UI widgets.
After you finish sections 1 and 2, you’ll have the basic JavaScript and jQuery skills that every web developer should have. Then, the 5 chapters in section 3 will build out your skills, so you can handle more demanding tasks. Here, then, you’ll learn more about how to use numbers, strings, and dates...how to handle exceptions and use regular expressions...when and how to use browser objects, cookies, and web storage…how to work with arrays and maps...and how to create and use your own objects.
The 3 chapters in section 4 will raise your JavaScript skills to a new level of expertise. Here, you’ll learn more about working with closures, the module pattern, and ES modules so you can safely share your code with other programmers. You’ll learn how to use Ajax with the Fetch API and Promise objects to asynchronously update a web page with data from a web server. And you’ll get introduced to doing server-side scripting in JavaScript by using Node.js.
Like all our books, this one has features that you won’t find in competing books. That’s why we believe you’ll learn faster and better with our book than with any other. Here are a few of those features:
This book is for anyone who needs to know how to develop JavaScript applications and benefit from jQuery. Today, that includes all web developers who are in either of these groups:
To develop JavaScript applications, you need:
To help you install these products, Appendix A provides the procedures that you’ll need for Windows, and Appendix B provides the macOS procedures. In addition, chapter 1 presents a short tutorial on using Visual Studio Code, and chapter 5 shows you how to use Chrome for debugging.
Our HTML and CSS book is the perfect companion to our JavaScript and jQuery book because it shows how to build web pages with HTML and CSS. When you combine this book with our JavaScript and jQuery book, you’ll have a complete reference set for building web pages.
Our Modern JavaScript book is similar to JavaScript and jQuery in many ways, but it shows how to use JavaScript to provide the functionality for your web pages without using the jQuery library.
“If you are new to web design or an old pro like me, this book is a must-have in my opinion. I love how it starts out with the basics and then moves on to the good stuff. Each chapter is full of examples and sample code showing you how to do the most common techniques that you will face as a web developer/designer.
“I have not seen a better book on the subject. This one will be on my desk for a while!”
- Web Developer, Colorado
“I just finished a pretty heavy application project, the first serious work I have done with jQuery and Ajax. Along the way, I had to deal with preloading images, manipulations of the DOM, tabs, plugins, and Dialogs…. I kept this book at my side throughout the entire project, and it was indispensable. The answers were right there at every turn. All the examples made sense to me, and they all worked!”
- Alan Vogt, ETL Consultant, Information Builders, Inc.
“What I like about this and other Murach books is that within minutes of opening the book, you are developing hands-on with the technology in question.”
- Charles Zimmerman, Developer
“An essential characteristic of this book, as well as the other Murach books, is that the examples, programs, and applications are all thoroughly tested. This book will work WONDERFULLY to help you build better and more robust websites!”
- Marvin Schneider, Instructor, New York
“I have several books on JavaScript, but the best one is this one. The text, examples, descriptions, and even the layout all bring you, the learner, an ease of use that is missing in other books.”
- Chris Wallace, Denver Visual Studio User Group
View the table of contents for this book in a PDF: Table of Contents (PDF)
Click on any chapter title below to display or hide its content.
The components of a web application
How static web pages are processed
How dynamic web pages are processed
How JavaScript is used for client-side processing
The version history of ECMAScript
Browser support for ECMAScript
The HTML
The CSS
The JavaScript
How to use the HTML5 semantic elements
How to use the div and span elements
How to use the basic HTML attributes
How to provide the CSS styles for an HTML page
How to code the basic CSS selectors
How to code CSS style rules
How to run a JavaScript application
How to find errors in your code
How to work with folders
How to work with files
How to edit a JavaScript file
How to install the Open in Browser extension
How to open an HTML file in a browser
How to use the script element
How to use the noscript element
How to code JavaScript statements
How to create identifiers
How to use comments
The primitive data types
How to declare and initialize variables and constants
How JavaScript handles variables and constants
How to code arithmetic expressions
How to use arithmetic expressions in assignment statements
How to concatenate strings
How to include special characters in strings
Introduction to objects, methods, and properties
How to use the parseInt() and parseFloat() methods of the window object
How to use the write() method of the document object
How to use the toFixed() method of a Number object
The Miles Per Gallon application
The Test Scores application
How to use the relational operators
How to use the logical operators
How to code if statements
How to code while and do-while loops
How to code for loops
The enhanced Miles Per Gallon application
The Future Value application
The enhanced Test Scores application
How to create and use arrays
How to use for loops to work with arrays
How to use for-in and for-of loops to work with arrays
The user interface
The JavaScript
An introduction to JavaScript objects
How to use the window object
How to use the document object
How to use Textbox and Number objects
How to use Date and String objects
How to create and call a function declaration
How to create and call a function expression
How to create and call an arrow function
How to work with global, local, and block scope
How to attach an event handler to an event
How to use anonymous functions with event handlers
How to work with the Event object
The Miles Per Gallon application
The Email List application
The three types of errors that can occur
Common JavaScript errors
How to plan the test runs
How to use Chrome to find errors
How to use breakpoints and step through your code
How to trace the execution of your JavaScript code
More methods for tracing execution
How to view the HTML and CSS for a web page
DOM scripting concepts
The properties of the Node interface
The methods of the Document and Element interfaces
The properties of the DOM HTML specification
The classList property of the Element interface
The HTML
The CSS
The JavaScript
How forms work
How to script Textbox, Textarea, and Select objects
How to script Radio and Checkbox objects
How to use the methods and events for forms and controls
The HTML
The JavaScript
How to create, add, replace, and delete nodes
The updated Register application
How to create an HTMLImageElement object
How to preload images
The HTML and CSS
The JavaScript
How to use a one-time timer
How to use an interval timer
The HTML and CSS
The JavaScript
What jQuery is
How jQuery can simplify JavaScript development
How to include jQuery in your web pages
How to code jQuery selectors
How to call jQuery methods
How to use jQuery event methods
The user interface and HTML
The JavaScript and jQuery
The most useful selectors
The most useful methods
The most useful event methods
Other event methods that you should be aware of
The FAQs application
The Image Swap application
The Image Rollover application
The jQuery methods for effects
The FAQs application with jQuery effects
The user interface, HTML, and CSS
Two ways to code the jQuery
How to stop and start a slide show
How to use the basic syntax of the animate() method
How to chain animate() methods
How to use the delay(), stop(), and finish() methods
How to use easings with effects and animations
How to use the advanced animate syntax and the methods for working with queues
The user interface, HTML, and CSS
The JavaScript and jQuery
How forms work
The HTML5 controls for working with forms
The HTML5 and CSS3 features for data validation
The jQuery selectors and methods for forms
The jQuery event methods for forms
The user interface and HTML
The JavaScript and jQuery
How to find jQuery plugins
How to use any jQuery plugin
How to use the Lightbox plugin for images
How to use the bxSlider plugin for carousels
How to use the Cycle 2 plugin for slide shows
What jQuery UI is and where to get it
How to download jQuery UI
How to include jQuery UI in your web pages
How to use any jQuery UI widget
How to use the Accordion widget
How to use the Tabs widget
How to use the Button and Dialog widgets
How to use the Datepicker widget
How to use the properties of the Number object
How to use the methods of the Number object
How to use the properties and methods of the Math object
How to generate a random number
The CSS
The HTML
The JavaScript
How to use the properties and methods of the String object
More methods of the String object
How to create an array from a string
How to create Date objects
How to use the methods of the Date object
Examples of working with dates
The HTML and CSS
The JavaScript
How to format numbers
How to format dates
How to use the equality and identity operators
How to use the break and continue statements
How to use the switch statement
How to use the conditional operator
How to use non-Boolean values in conditions
Additional techniques for using the logical operators
The HTML
The JavaScript
How to use try-catch statements
How to create and throw Error objects
How to create and use regular expressions
How to match special characters and types of characters
How to match string positions, subpatterns, and repeating patterns
Regular expressions for data validation
The HTML
The JavaScript
How to use the location object
How to use the history object
The HTML
The JavaScript
An introduction to cookies
How to create cookies
How to read cookies
How to delete cookies
The HTML and CSS
The JavaScript
How to use local and session storage
The Task List application with web storage
How to work with cookies
How to work with web storage
How to create an array
How to add and delete array elements
How to use for, for-in, and for-of loops with arrays
How to destructure an array
Methods that add, modify, remove, and copy elements
Methods that inspect an array or its elements
Methods that transform the elements
The HTML
The JavaScript
How to split a string into an array
How to make a copy of an array
How to create and use an associative array
How to create and use an array of arrays
How to convert an array to JSON and back
The HTML
The JavaScript
How to create and use a set
How to create and use a map
How to create object literals
More skills for coding methods and properties
How to extend or modify an object
How to work with accessor properties
How to create and use JavaScript libraries
The HTML
The JavaScript
How to use a class to define an object type
How to use inheritance
When to use inheritance
When to use object composition
The HTML and CSS
The JavaScript
An introduction to prototypes
Legacy code for creating objects
How to use a symbol as a computed property or method name
How to work with iterators
How to work with generator functions
How to create cascading methods
How to destructure an object
An introduction to the static methods of the Object type
The HTML and CSS
The JavaScript
How to create a function
How to work with default parameters
How to use the rest and spread operators
How to work with the this keyword
The HTML and CSS
The JavaScript
An introduction to closures
How to use closures to create private state
How to work with the this keyword in closures
The HTML
The JavaScript
How to code an IIFE
How to use the module pattern and namespaces
How to import and export module items
How to declare a script as a module
More skills for working with modules
The HTML
The JavaScript
How Ajax works
Two common data formats for Ajax
The JSON Placeholder API
How to use the XMLHttpRequest object
How to use the Fetch API
The HTML and CSS
The NASA APOD API
The JavaScript
The XMLHttpRequest object and “callback hell”
How the Fetch API solves “callback hell”
How to use named callback functions
How to handle errors
The HTML and CSS
The JavaScript
How to create and use your own Promise objects
Static methods of the Promise type
How to use the async and await keywords
How to work with for-await-of loops
The updated JavaScript for the Photo Viewer application
An introduction to Cross Origin Resource Sharing
How to handle CORS issues with APIs
When to use Node.js
How to install Node.js
How to interactively test code
How to run a script
How to pass arguments to a script
An introduction to modules
How to use the built-in file system module
How to use the built-in file system module with promises
How to create and use your own module
An introduction to NPM
How to install and use the http-server module
How package.json files work
How to install the source code for this book
How to install Chrome
How to install Visual Studio Code
How to install the source code for this book
How to install Chrome
How to install Visual Studio Code
To get a better idea of how well this book works, you can download a chapter in PDF format. As you will see, the approach in this book works for programming novices as well as for experienced programmers.
This chapter uses two simple JavaScript applications to introduce you to the syntax and characteristics of the language.
It’s designed to work for programming novices, so it starts your JavaScript training slowly. If you have programming experience, though, you’ll see how our paired-pages design and how-to headings allow you to speed through material you already know…and focus on features that are new to you.
And no matter how much programming experience you have, you’ll see how the chapter exercises let you practice what you’ve learned in interesting ways.
Chapter 2 PDF Download Now
This download includes:
Appendixes A and B in the book shows how to install and use these files on Windows and macOS.
Exe file for Windows Download Now
Zip file for any system Download Now
To view the "Frequently Asked Questions" for this book in a PDF, just click on this link: View the questions
Then, if you have any questions that aren't answered here, please email us. Thanks!
To view the corrections for this book in a PDF, just click on this link: View the corrections
Then, if you find any other errors, please email us so we can correct them in the next printing of the book. Thank you!
For orders and customer service:
1-800-221-5528
Weekdays, 8 to 4 Pacific Time
If you're a college instructor who would like to consider a book for a course, please visit our website for instructors to learn how to get a complimentary review copy and the full set of instructional materials.