Maison > interface Web > js tutoriel > le corps du texte

La différence entre terminé et ensuite

php中世界最好的语言
Libérer: 2018-03-15 15:12:45
original
6559 Les gens l'ont consulté

Cette fois, je vais vous présenter la différence entre done et then. Quelles sont les précautions lors de l'utilisation de done et then. Voici un cas pratique, jetons un coup d'oeil. La méthode done et la méthode then de

jquerydeferred objet peuvent toutes deux implémenter des appels en chaîne, mais leurs fonctions sont différentes si vous transmettez la méthode then If. la méthode a une valeur de retour, elle sera passée à la prochaine méthode appelée dans la chaîne. La méthode done est l'inverse. Même si la méthode que vous transmettez a une valeur de retour, la méthode done ne transmettra pas votre valeur de retour à la méthode suivante appelée dans la chaîne

Sans plus. ado, passons directement à l'exemple :

var defer = jQuery.Deferred();
defer.done(function(a,b){
  console.log("a = " + a+"b = " + b);
  return a * b;
}).done(function( result ) {
  console.log("result = " + result);
}).then(function( a, b ) {
  console.log("a = " + a+"b = " + b);
  return a * b;
}).done(function( result ) {
      console.log("result = " + result);
}).then(function( a, b ) {
  console.log("a = " + a+"b = " + b);
  return a * b;
}).done(function( result ) {
  console.log("result = " + result);
});
defer.resolve( 2, 3 );
Copier après la connexion

Le résultat de sortie est le suivant :

Analyse des résultats :

1. >

2. La valeur de retour du rappel dans done ne sera pas transmise

3. Le deuxième done n'a qu'un seul paramètre et reçoit le premier paramètre 2 de defer.resolve(2, 3), donc résultat. Il s'agit de 2

4. Le premier reçoit alors defer.resolve(2, 3) et reçoit deux paramètres. Le résultat est 6. En même temps, un nouvel

objet différé est créé. et le résultat est transmis à l'objet différé.

5. Le troisième terminé a reçu le nouvel objet différé et le résultat transmis, a imprimé le résultat 6 et a ensuite transmis le nouvel objet différé au deuxième

6. Le second reçoit alors le nouvel objet différé. Il n'a qu'un seul paramètre, qui est le résultat, donc le paramètre b n'est pas défini. En même temps, un nouvel objet différé

.

est créé. 7. Le quatrième terminé reçoit Pour un objet différé nouvellement créé, le paramètre passé est NaN, et le résultat imprimé est naturellement NaN

Je crois que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de PHP !


Lecture recommandée :

Comment le plug-in Validate de jQuery valide les valeurs d'entrée

Utilisation du panneau pliable jQuery EasyUI

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal