今日、私は WordPress チュートリアルに従っており、インストラクターは jQuery と JavaScript、特に .then() メソッドと .when() メソッドを使用してサイトを検索する方法をデモンストレーションしていました。続けていくうちに、私は思ったほどこれらの方法に慣れていないことに気づきました。
そこで、少し調べてメモをとり、Obsidian ノートブックに追加しました。正直に言うと、メモはちょっと荒いです。リスの集中力しかない小学 5 年生が組み立てたようなものです (正直に言うと、私と似ていると感じることがあります!)。
でも、それを共有したらどうだろうと考えました。一人でも役に立てば、投稿する価値があります。
あなたは学校にいて、あなたと友達はお互いに約束をしています。これらの約束は、「宿題を終わらせてからゲームをしましょう」と言っているようなものです。
しかし問題は、宿題を終えるのに少し時間がかかることがあるということです。すぐに食べ終わるかもしれませんし、犬が食べてしまうかもしれませんが、決して食べ終わることはありません (おっと!)。 JavaScript Promise も同様に機能します。何かが起こるのを待って、「オーケー、次は何をする?」と言います
.then() メソッドは、Promise が完了した後に行うことと似ています。あなたが友達にこう言うと想像してみてください:
でも、終わらなかったらどうするの?ああ、バックアップ プランを追加できます:
これを JavaScript でどのように言うか:
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 });
これは、大勢の友達が宿題を終えるのを待っているときのようなもので、みんなで一緒に遊べます。あなたは次のような人です:
実生活では、それを一緒に働くと呼びます。 JavaScript では、Promise.all() と呼ばれるものを使用します (これは、「全員の準備ができるまで待ちましょう!」と言っているのと同じです):
Promise.all([friend1, friend2]).then(() => { console.log("We’re all done! Time to play!"); });
つまり、JavaScript は、約束が守られた場合、または破られた場合に 次に何が起こるか を認識しているだけなのです。 ?
Promise だけでは宿題をチェックしません。 それはあなたが言います!約束を作成するときは、タスク (宿題を終えるなど) が完了したかどうかに基づいて、約束を解決するか拒否するかを決定します。 Promise が解決されると .then() が実行され、拒否されると .catch() が実行されます。
実際の動作を確認するための完全な例を次に示します:
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) });
以上がJavaScript の .then / .when メソッド。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。