Almost a year back, i had to write my first module using JQuery. Within days of using it, i fell in love with the library. And it wasn’t because of the numerous features that it offers but the lean and intuitive APIs  that it exposes. Till then i was just a regular C# developer and knew traditional JavaScript very well but did not enjoy programming in it. JQuery changed it. How you may ask. Well let me explain using a analogy:

As a C# developer, I was glad MS released Linq support in 3.0 version of the language. It brought  SQL query like syntax to C#. Filtering a collection of objects became far easier. You could do the same without Linq too but Linq queries appealed to your natural sense. With just few lines, you could implement fairly complex filtering and querying logic.

Now what Linq is to C#, JQuery is to JavaScript. JQuery isn’t a new language. Everything that you can do with JQuery, you can do that using traditional JavaScript too. But it brings the query like syntax to client side programming. The object collection it operates on is the entire DOM. The selector API of the library enables you to query the DOM objects using any of the CSS selectors. The API returns the collection of matching objects. You can use different APIs on this collection to further filter or perform a common function on the entire collection.

For further reading on JQuery, refer to the following msdn article.