Javascript language was initially (during web1.0 era) used
for client side validations only. But in current scenario, its purpose has
changed drastically. It is widely used for user interactivity, friendliness,
validations, high performance and speed, responsiveness (for handheld devices
like mobile, tablet etc.) and many more purposes.
Due to all these reasons, client side languages like JS and
Jquery are used. As websites are mostly browser/ device dependent, so JS is
heavily used. This can impact loading time and performance of the website. To overcome
this, many JS frameworks and libraries are launched in the market. All these have their own pros and cons.
Difference between Framework and library.
A library is
essentially a set of functions that you can call, these days usually organized
into classes. Each call does some work and returns control to the client.
A framework
embodies some abstract design, with more behavior built in. In order to use it
you need to insert your behavior into various places in the framework either by
subclassing or by plugging in your own classes. The framework's code then calls
your code at these points.
Refer http://en.wikipedia.org/wiki/List_of_JavaScript_libraries to get the list of most commonly used Javascript frameworks and libraries.