- History of JavaScript
- Scope
- Hoisting
- Lexical Scoping
- Closure
- this
- Prototype
- Do's & Don't in JavaScript
-
equality
-
variable names
-
global variable
-
curly brace
-
semi-colon
-
strict
-
formatting
-
avoid with
-
avoid new in primitive types
-
eval
-
with
-
- Efficient coding
- Prototype chains
- Nested members
- Caching Object Member values
- Don't Modify objects which you don't own
- Avoid
nullcomparision
- DOM Scripting/Manipulation Best Practices
- InnerHTML
- Cloning Nodes
- Loose Coupling
- Keep JS out of CSS
- Keep CSS out of JS
- Keep JS out of HTML
- Keep HTML out of JS
- Keep CSS out of HTML
- Avoiding Excessive DOM Manipulation
- Browser vs Feature Detection
- Feature & Browser Inference
- Different ways of Loading JavaSript
- Privacy / Abstraction
- Acheiving
Immutability
- Design Patterns
- Module Pattern
- Revealing Module Pattern
- Mediator Pattern
- Do's & Don'ts in JavaScript
- Efficient coding with Best Practices
- DOM Scripting / Manipulation Best Practices
- Privacy / Abstraction
- Immutability in JavaScript