توفر JavaScript طريقة قوية للتعامل مع العمليات غير المتزامنة مع الوضوح والكفاءة. من خلال إتقان الوعود ، يمكنك كتابة أنظف وأكثر قابلية للصيانة وتجنب المزالق مثل Hellback Hell. ابدأ في التدريب مع الأساليب والأمثلة أعلاه ، وستكون في طريقك إلى إتقان JavaScript غير المتزامن!
","image":"http://www.luping.net/uploads/20250206/173884321667a4a4500cc53.jpg173884321667a4a4500cc5e.jpg","datePublished":"2025-02-06T20:51:32+08:00","dateModified":"2025-02-06T20:51:32+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
الوعود هي ميزة قوية في JavaScript تبسيط التعامل مع العمليات غير المتزامنة. أنها توفر طريقة أنظف وأكثر سهولة للعمل مع رمز ASYNC ، وتجنب مشاكل مثل "Callback Hell."
A الوعد هو كائن يمثل الانتهاء النهائي (أو الفشل) لعملية غير متزامنة وقيمتها الناتجة. يتيح لك كتابة رمز غير متزامن أكثر قابلية للإدارة من خلال عمليات التسلسل والتعامل مع الأخطاء بفعالية.
وعد له ثلاث حالات:
const promise = new Promise((resolve, reject) => { let success = true; // Change to false to simulate rejection if (success) { resolve("Operation was successful!"); } else { reject("Operation failed."); } }); promise .then((result) => console.log(result)) .catch((error) => console.error(error));
promise .then((result) => { console.log(result); return "Next Step"; }) .then((nextResult) => console.log(nextResult));
promise.catch((error) => console.error(error));
promise.finally(() => console.log("Cleanup actions."));
const promise1 = Promise.resolve(10); const promise2 = Promise.resolve(20); Promise.all([promise1, promise2]).then((results) => console.log(results));
const promise1 = Promise.resolve("Success"); const promise2 = Promise.reject("Error"); Promise.allSettled([promise1, promise2]).then((results) => console.log(results));
const promise1 = new Promise((resolve) => setTimeout(resolve, 500, "One")); const promise2 = new Promise((resolve) => setTimeout(resolve, 100, "Two")); Promise.race([promise1, promise2]).then((result) => console.log(result));
const promise1 = Promise.reject("Error 1"); const promise2 = Promise.resolve("Success"); const promise3 = Promise.reject("Error 2"); Promise.any([promise1, promise2, promise3]).then((result) => console.log(result));
يتيح التسلسل التعامل مع عمليات غير متزامنة متعددة بالتسلسل.
fetch("https://api.example.com/data") .then((response) => response.json()) .then((data) => { console.log(data); return fetch("https://api.example.com/other-data"); }) .then((otherResponse) => otherResponse.json()) .then((otherData) => console.log(otherData)) .catch((error) => console.error("Error:", error));
تنتشر الأخطاء من خلال سلسلة الوعد حتى يتم القبض عليها بواسطة كتلة catch ().
fetch("https://api.example.com/data") .then((response) => { if (!response.ok) throw new Error("Network response was not ok"); return response.json(); }) .then((data) => console.log(data)) .catch((error) => console.error("Error:", error));
يمكنك استكشاف حالة استخدام مفصلة للوعود الخاصة بالوعود هنا:
توفر JavaScript طريقة قوية للتعامل مع العمليات غير المتزامنة مع الوضوح والكفاءة. من خلال إتقان الوعود ، يمكنك كتابة أنظف وأكثر قابلية للصيانة وتجنب المزالق مثل Hellback Hell. ابدأ في التدريب مع الأساليب والأمثلة أعلاه ، وستكون في طريقك إلى إتقان JavaScript غير المتزامن!
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3