Classic JavaScript Patterns

The original 23 Design Patterns were published in 1995 by the Gang of Four (GoF). Many of these are highly relevant to JavaScript, whereas others are less so.

This section reviews each of the Classic Patterns and for each one its 'frequency-of-use' is indicated.




  Gang-of-Four
   Introduction Introduction to the JavaScript Classic Patterns
  Creational Patterns
   Abstract Factory Creates an instance of several object families
   Builder Separates object construction from its representation
   Factory Method Creates an instance of several related objects
   Prototype A fully initialized instance to be copied or cloned
   Singleton An object of which only a single instance can exist
  Structural Patterns
   Adapter Match interfaces of different objects
   Bridge Separates an object’s interface from its implementation
   Composite A tree structure of simple and composite objects
   Decorator Add responsibilities to objects dynamically
   Façade A single object that represents an entire subsystem
   Flyweight A fine-grained instance used for efficient sharing
   Proxy An object representing another object
  Behavioral Patterns
   Chain of Resp. A way of passing a request between a chain of objects
   Command Encapsulate a command request as an object
   Interpreter A way to include language elements in a program
   Iterator Sequentially access the elements of a collection
   Mediator Defines simplified communication between objects
   Memento Capture and restore an object's internal state
   Observer A way of notifying change to a number of objects
   State Alter an object's behavior when its state changes
   Strategy Encapsulates an algorithm inside an object
   Template Method Defer the exact steps of an algorithm to another object
   Visitor Defines a new operation to an object without change