Les fonctions différées
La version 1.5 de jQuery a introduit le concept des objets différés qui permettent de gérer, dans le futur, des éléments qui n’existent pas encore dans l’instant présent. C’est souvent le cas lors des requêtes AJAX asynchrones.
Dans les versions précédentes de jQuery, il fallait composer avec les seules situations d’achèvement (success) ou d’échec (error) des requêtes AJAX. Les objets différés permettent à présent d’externaliser des fonctions de rappel en dehors du contexte de la requête, sans se soucier du moment où la requête Ajax se termine.
Cette caractéristique, importante dans la gestion des requêtes AJAX, était déjà présente dans les frameworks JavaScript Dojo et MochiKit. Les développeurs peuvent maintenant disposer en jQuery de cette avancée notoire au niveau de la programmation des processus asynchrones.
Avec jQuery, ces objets différés ou reportés ne se limitent pas qu’aux requêtes AJAX et peuvent ainsi être utilisés également dans d’autres contextes.
Le tableau suivant fournit les principales fonctionnalités de ces objets différés.
jQuery.Deferred() jQuery.Deferred |
Crée un nouvel objet différé. Cet objet différé peut prendre trois statuts : non résolu (unresolved), résolu... |