Home > Store

Introduction to JavaScript Programming The "Nothing but a Browser" Approach

Register your product to gain access to bonus material or receive a coupon.

Introduction to JavaScript Programming The "Nothing but a Browser" Approach


  • Your Price: $96.32
  • List Price: $113.32
  • Usually ships in 24 hours.



A proven pedagogical approach

  • Understanding Programming through JavaScript relies on three proven strategies to maximize students’ understanding.
  1. Introduce the concepts of programming using a JavaScript version of Karel the Robot, which helps students pick up coding fundamentals and important concepts without getting bogged down in syntax.
  2. Adopt the well-structured programming principles defined by preeminent JavaScript authority Douglas Crockford and present topics in an order that defers the most challenging topics until students have the necessary background.
  3. Motivate students to apply conceptual understanding of programming using a real language with nothing but a web browser, skipping separate development environments for a more open, fluid, and engaging learning experience.

Pedagogical features that enhance student learning

  • Chapter openers begin each chapter with a short biography of a computer science pioneer, helping to humanize and contextualize computing.
  • Key terms are clearly identified on first use and immediately defined.
  • Syntax boxes highlight and summarize each new syntactic form as its introduced in the text.
  • Syntax coloring helps ensure that students can identify, and therefore learn, the difference between comments, keywords, and string constants compared to the rest of the code.
  • Chapter summaries conclude each chapter and include extensive summaries, key terms and ideas, and more.
  • Review questions after each chapter summary provide robust self-test opportunities to help students gauge and increase their understanding of newly introduced topics.
  • Extensive programming exercises test students’ understanding of chapter material while simultaneously providing them with exciting opportunities to create live applications.

Resources for students

    • Source code for all the programs in the text are presented in the text’s companion website.
    • Program animations show students the completed versions of important sample programs to help guide them through execution.
    • Review question answers are on the site so students can check their work.
Check out the preface for a complete list of features.


  • Copyright 2020
  • Dimensions: 7-3/8" x 9-1/8"
  • Pages: 480
  • Edition: 1st
  • Book
  • ISBN-10: 0-13-524585-0
  • ISBN-13: 978-0-13-524585-9

For courses in Java Programming.

Introducing the fundamental concepts of programming with JavaScript

A brand new textbook by Eric Roberts, Understanding Programming through JavaScript focuses on the fundamental concepts of programming, and is written for students with no prior knowledge or experience. It draws on a rich pedagogical heritage—including the immersive Karel the Robot microworld, time-testing programming guidelines, and a logical, step-by-step organization—to give them the foundational skills needed to pursue other coding languages, or a career in computer programming. Using the text, students will build their skills and develop live, interactive web applications that really work on web browsers, providing both instant feedback and gratification. This new text includes chapter openers that humanize computing, review questions for student self-testing, and many other valuable features.

Sample Content

Table of Contents

1. A Gentle Introduction

1.1 Introducing Karel

1.2 Teaching Karel to solve problems

1.3 Control statements

1.4 Stepwise refinement

1.5 Algorithms in Karel’s world


            Review questions


2. Introducing JavaScript

2.1 Data and types

2.2 Numeric data

2.3 Variables

2.4 Functions

2.5 String data

2.6 Running JavaScript in the browser

2.7 Testing and debugging

2.8 Software maintenance


            Review questions


3. Control Statements

3.1 Boolean Data

3.2 The if statement

3.3 The switch statement

3.4 The while statement

3.5 The for statement

3.6 Algorithmic programming

3.7 Avoiding fuzzy standards of truth


            Review questions


4. Simple Graphics

4.1 A graphical version of “Hello World”

4.2 Classes, objects, and methods

4.3 Graphical objects

4.4 The graphics window

4.5 Creating graphical applications


            Review questions


5. Functions

5.1 A quick review of functions

5.2 Libraries

5.3 A library to support randomness

5.4 The mechanics of function calls

5.5 Recursive functions


            Review questions


6. Writing Interactive Programs

6.1 First-class functions

6.2 A simple interactive example

6.3 Controlling properties of objects

6.4 Responding to mouse events

6.5 Timer-based animation

6.6 Expanding the graphics library


            Review questions


7. Strings

7.1 Binary representation

7.2 String operations

7.3 Classifying characters

7.4 Common string patterns

7.5 String applications

7.6 Reading from the console


            Review questions


8. Arrays

8.1 Introduction to arrays

8.2 Array operations

8.3 Using arrays for tabulation

8.4 Reading text from files

8.5 Multidimensional arrays

8.6 Image processing


            Review questions


9. Objects

9.1 Objects in JavaScript

9.2 Using objects as maps

9.3 Representing points

9.4 Rational numbers

9.5 Linking objects together


            Review questions


10. Designing Data Structures

10.1 Abstract data types

10.2 Implementing a token scanner

10.3 Efficiency and representation

10.4 Representing real-world data


            Review questions


11. Inheritance

11.1 Class hierarchies

11.2 Defining an employee hierarchy

11.3 Extending graphical classes

11.4 Decomposition and inheritance

11.5 Alternatives to inheritance


            Review questions


12. JavaScript and the Web

12.1 A simple interactive example

12.2 An expanded look at HTML

12.3 Controlling style using CSS

12.4 Connecting JavaScript and HTML

12.5 Storing data in the index.html file


            Review questions



Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership