This pattern can be dangerous, specially in this ES5 era where getters and setters are extremely common, specially on mobile browsers where nobody cares about IE gap: window.whatever = window.whatever || { /* the whatever it is, object, function, anything */ };
- Premasagar Rose