The growing role of JavaScript in application development is clear to everyone. Once it was a simple language to add interactivity to HTML pages, now the role of JavaScript has become increasingly important enough to completely overturn the relationship with HTML, its historical partner. In fact, a few years ago, web applications were primarily HTML markup with the addition of some JavaScript scripts; today, the majority of complex applications are represented by JavaScript code that controls the HTML markup generation and display.
Even outside of the web browser context, the role of JavaScript is increasing. Today, a JavaScript application is able to run on servers, desktop applications, mobile devices, and even on embedded systems.
This evolution gives JavaScript more responsibility than it had, when its role was mostly about interactivity management and posting data to the server. What used to be a collection of simple scripts has now become a complex combination...