"Charting the Course ...

... to Your Success!"

JavaScript Advanced

Course Summary

Description

This course will review the basics of JavaScript and provide instruction on advanced topics such as advanced features of JavaScript functions, Object-Oriented programming in JavaScript (Inheritance, encapsulation) with prototypes, using closures, understanding JavaScript promises and advanced best practices.

Objectives At the end of this course, students will be able to:  Review  Learn function expressions/function declarations/immediately executable functions  Use JavaScript objects to implement Inheritance and encapsulation  Understand JavaScript closures  Learn JavaScript promises  Discuss how to best use the advanced topics in this course in your JavaScript projects.

Topics

 Basics Review  Object-Oriented Programming  Function Expressions  Error Handling And Debugging  Advanced Techniques

Audience

This course is intended for JavaScript programmers

Prerequisites

JavaScript introduction

Duration

Two days

Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

"Charting the Course ...

... to Your Success!"

JavaScript Advanced

Course Outline

I. Basics Review IV. Error Handling And Debugging A. Browser Error Reporting II. Object-Oriented Programming B. Internet Explorer A. Understanding Objects . Firefox B. Types of Properties D. Chrome C. Defining Multiple Properties E. Error Handling D. Reading Property Attributes F. The try-catch Statement E. Object Creation G. Throwing Errors F. The Factory Pattern H. The error Event G. The Constructor Pattern I. Error-handling Strategies H. The J. Identify Where Errors Might Occur I. Combination Constructor/Prototype Pattern K. Distinguishing between Fatal and Nonfatal J. Dynamic Prototype Pattern Errors K. Parasitic Constructor Pattern L. Debugging Techniques L. Durable Constructor Pattern M. Logging Messages to a Console M. Inheritance N. Logging Messages to the Page N. Prototype Chaining O. Throwing Errors O. Constructor Stealing P. Combination Inheritance V. Advanced Techniques Q. Prototypal Inheritance A. Advanced Functions R. Parasitic Inheritance B. Safe Type Detection S. Parasitic Combination Inheritance C. Scope-Safe Constructors D. Functions III. Function Expressions E. Function Binding A. Recursion F. Function B. Closures G. Tamper-Proof Objects C. Closures and Variables H. Nonextensible Objects D. The this Object I. Sealed Objects E. Memory Leaks J. Frozen Objects F. Mimicking Block Scope K. Custom Events G. Private Variables H. Static Private Variables I. The J. The Module-Augmentation Pattern

Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically