Refactoring
- use isDefined & isUndefined where needed
- declare "undefined", so it can be minified too
Refactoring
- move helper functions to the top
Refactoring
- use Helper methods for type checking, which (in case of a String for example) is way more effective (typeof new String() === "string" will say false)