1 There are only 3 data types string number and boolean.
2 Data type is defined by value assigned during runtime.
3 undefined value comes in when you declare a variable but do not assign value.
4 There only two scopes private and global scope.Scope is determined using lexical approach.
5 Lexical scope is only followed when you use VAR keyword or else the variable is global.
6 Variable decalaration are hoisted. Variable assign is not hoisted.
7 this is a global object on window.Everything gets create and attached to this.
8 Two way of creating object constructor and Literal approach.
9 Closures help you to retain values and mimic OOP.They help us mimic abstraction ( return) and encapsulation ( private).
11 IIFY helps to avoid hoisting problems and pollute global variables.