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.
Table of Contents
FOREWORD xliii
INTRODUCTION xlv
CHAPTER 1: WHAT IS JAVASCRIPT? 1
CHAPTER 2: JAVASCRIPT IN HTML 9
CHAPTER 3: LANGUAGE BASICS 19
CHAPTER 4: VARIABLES, SCOPE, AND MEMORY 97
CHAPTER 5: BASIC REFERENCE TYPES 119
CHAPTER 6: ADVANCED REFERENCE TYPES 159
CHAPTER 7: ITERATORS AND GENERATORS 217
CHAPTER 8: OBJECTS, CLASSES, AND OBJECT'ORIENTED PROGRAMMING 251
CHAPTER 9: PROXIES AND REFLECT 323
CHAPTER 10: FUNCTIONS 349
CHAPTER 11: PROMISES AND ASYNC/AWAIT 383
CHAPTER 12: THE BROWSER OBJECT MODEL 435
CHAPTER 13: THE DOCUMENT OBJECT MODEL 459
CHAPTER 14: DOM EXTENSIONS 507
CHAPTER 15: EVENTS 557
CHAPTER 16: ANIMATION AND GRAPHICS WITH CANVAS 609
CHAPTER 17: SCRIPTING FORMS 645
CHAPTER 18: JAVASCRIPT APIs 675
CHAPTER 19: ERROR HANDLING AND DEBUGGING 765
CHAPTER 20: JSON 791
CHAPTER 21: NETWORK REQUESTS AND REMOTE RESOURCES 801
CHAPTER 22: CLIENT'SIDE STORAGE 839
CHAPTER 23: MODULES 861
CHAPTER 24: WORKERS 887
CHAPTER 25: BEST PRACTICES 955
APPENDIX A: ES.NEXT 987
APPENDIX B: STRICT MODE 991
APPENDIX C: JAVASCRIPT LIBRARIES AND FRAMEWORKS 999
APPENDIX D: JAVASCRIPT TOOLS 1005
INDEX 1017