normal JavaScript Design Pattern