Learn all about the jQuery function deferred.resolveWith().
Normally, only the creator of a Deferred should call this method; you can prevent other code from changing the Deferred’s state by returning a restricted Promise object through
When the Deferred is resolved, any doneCallbacks added by
deferred.done are called. Callbacks are executed in the order they were added. Each callback is passed the
args from the
.resolve(). Any doneCallbacks added after the Deferred enters the resolved state are executed immediately when they are added, using the arguments that were passed to the
.resolve() call. For more information, see the documentation for Deferred object.