Heim  >  Artikel  >  Web-Frontend  >  JavaScript die .then / .when-Methode.

JavaScript die .then / .when-Methode.

DDD
DDDOriginal
2024-10-17 06:27:29718Durchsuche

JavaScript the .then / .when method.

Heute folgte ich einem WordPress-Tutorial und der Kursleiter demonstrierte, wie man die Website mit jQuery und JavaScript durchsucht, insbesondere mit den Methoden .then() und .when(). Im weiteren Verlauf wurde mir klar, dass ich mit diesen Methoden nicht so vertraut war, wie ich dachte.

Also habe ich ein wenig recherchiert, mir ein paar Notizen gemacht und sie meinem Obsidian-Notizbuch hinzugefügt. Um ehrlich zu sein, sind die Notizen ziemlich grob – sie sehen aus wie etwas, das ein Fünftklässler mit der Aufmerksamkeitsspanne eines Eichhörnchens zusammenstellen könnte (was sich, seien wir ehrlich, manchmal wie ich anfühlt!).

Aber ich dachte mir, warum sie nicht teilen? Wenn sie auch nur einer Person helfen, lohnt es sich zu posten.


Stellen Sie sich Folgendes vor:

Du bist in der Schule und du und deine Freunde machen einander Versprechen. Diese Versprechen sind, als würde man sagen: „Ich mache meine Hausaufgaben fertig, und dann können wir Spiele spielen.“

Aber hier ist die Sache: Manchmal dauert es eine Weile, bis man die Hausaufgaben erledigt. Möglicherweise sind Sie schnell fertig, oder Ihr Hund frisst es, und Sie werden nie fertig (ups!). JavaScript-Versprechen funktionieren auf die gleiche Weise. Es wartet darauf, dass etwas passiert, und sagt dann: „Okay, was kommt als nächstes?“

Lassen Sie uns nun über .then() sprechen:

Die .then()-Methode ähnelt dem, was Sie tun werden, nachdem das Versprechen erfüllt ist. Stellen Sie sich vor, Sie sagen zu Ihrem Freund:

  • „Wenn ich meine Hausaufgaben mache, dannkönnen wir Videospiele spielen!“

Aber was ist, wenn Sie nicht fertig werden? Oh-oh, Sie können einen Backup-Plan hinzufügen:

  • „Wenn ich meine Hausaufgaben nicht mache, dannspielen wir keine Videospiele.“

So würde man das in JavaScript sagen:

promiseToFinishHomework
  .then(() => {
    console.log("Yay! We can play games!"); // If you finished
  })
  .catch(() => {
    console.log("Oh no! No games today!"); // If you didn’t finish
  });

Nun zu .when():

Das ist, als ob Sie darauf warten, dass ein paar Ihrer Freunde ihre Hausaufgaben machen, damit Sie alle zusammen spielen können. Du bist wie:

  • „Wenn wir alle fertig sind, können wir zusammen spielen!“

Im wirklichen Leben nennt man das Zusammenarbeiten. In JavaScript verwenden Sie etwas namens Promise.all() (das ist so, als würde man sagen: „Warten wir, bis alle bereit sind!“):

Promise.all([friend1, friend2]).then(() => {
  console.log("We’re all done! Time to play!");
});

Zusammenfassung (Supereinfach):

  • .then() Ist so, als würde man sagen: „Wenn diese eine Sache erledigt ist, machen wir etwas Lustiges.“
  • .when() (oder Promise.all()) ist so, als würde man sagen: „Wenn alle ihre Arbeit beendet haben, spielen wir alle zusammen.“

JavaScript stellt also nur sicher, dass es weiß, was als nächstes passiert, wenn Versprechen gehalten oder gebrochen werden! ?


Woher weiß es das?

Das Versprechen überprüft die Hausaufgaben nicht von selbst. Du sagst es! Wenn Sie ein Versprechen erstellen, entscheiden Sie, ob es gelöst oder abgelehnt wird, je nachdem, ob die Aufgabe (z. B. Hausaufgaben erledigt) erledigt ist oder nicht. .then() wird ausgeführt, wenn das Versprechen gelöst wird, und .catch() wird ausgeführt, wenn es abgelehnt wird.

Beispiel mit realer Action:

Hier ist ein vollständiges Beispiel, um es in Aktion zu sehen:

let promiseToFinishHomework = new Promise((resolve, reject) => {
  let finishedHomework = true; // Change this to false to see the rejection

  if (finishedHomework) {
    resolve(); // Homework is done!
  } else {
    reject(); // Homework is not done!
  }
});

promiseToFinishHomework
  .then(() => {
    console.log("Yay! We can play games!"); // If the promise resolves (homework done)
  })
  .catch(() => {
    console.log("Oh no! No games today!"); // If the promise rejects (homework not done)
  });

Das obige ist der detaillierte Inhalt vonJavaScript die .then / .when-Methode.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn