Deferred is a concept that can be hard to understand at first, but once you get a hold of it, it is extremely powerful and simple to use, just like any other jQuery function. So, I will try to explain it using an example and try to explain the concept first to see why we would use them at all. You have 10 ajax requests going on in a page and you need to trigger an alert after all of them are completed. There is no guarantee that they will be finished in order. Some may take a lot of time to execute while some may be fast. You have no trigger for this. This is where promises come into play. To put it simply, it is just an object which we can manipulate to trigger the completion of one or many asynchronous events (like ajax requests). A promise is a subset...