JavaScript is a very flexible programming language and often one problem can be solved in a few different ways. However, some ways are more appropriate and efficient for some problems than others. JavaScript is also an object-oriented programming language, which might be a bit puzzling when it comes to the creation of an object. Why?