Introduction to JavaScript Programming: The 'Nothing but a Browser' Approach, 1st edition
Published by Pearson (February 1, 2019) © 2020
- Eric Roberts
eTextbook
- Anytime, anywhere learning with the Pearson+ app
- Easy-to-use search, navigation and notebook
- Simpler studying with flashcards
- Hardcover, paperback or looseleaf edition
- Affordable rental option for select titles
- Free shipping on looseleafs and traditional textbooks
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 to give them the foundational skills needed to pursue other coding languages or a career in computer programming.
Students will build their skills and develop live, interactive web applications that really work on web browsers. It includes chapter openers that humanize computing, review questions for student self-testing and many other valuable features.
Hallmark features of this title
- Chapter openers begin each chapter with a short biography of a computer science pioneer.
- 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 their understanding of new topics.
- Extensive programming exercises test students' understanding of chapter material while also providing them with opportunities to create live applications.
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
- 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
- Summary
- Review questions
- Exercises
About our author
Eric Roberts is the Charles Simonyi Professor of Computer Science, emeritus, at Stanford University. Throughout his career, Roberts was a widely acknowledged leader in computer science education and received numerous national and international awards, including the Outstanding Contribution to Computer Science Education Award from the Association for Computing Machinery's Special Interest Group in Computer Science Education (ACM SIGCSE), the Karl V. Karlstrom Outstanding Educator Award from the ACM, and the Taylor Booth Education Award from the Institute for Electrical and Electronic Engineers Computer Society (IEEE-CS).
Need help? Get in touch