refactoring JavaScript