هل .then(function(a){ return a; }) لا يجوز تنفيذ الوعود؟
في مجال الوعود ، لقد نشأت مسألة ما إذا كانت .then(function(a){ return a; }) هي عملية عدم. دعونا نلقي الضوء على هذا الاستعلام الغريب:
نعم، عادةً ما يكون ذلك أمرًا محظورًا.
يتلقى الكود المعني القيمة المرتجعة للوعد السابق في ملف سلسلة عبر الدالة التي تم تمريرها إلى .then(). ومع ذلك، إذا كانت هذه الوظيفة تقوم فقط بإرجاع الإدخال a، فإنها تتجاوز بشكل فعال أي معالجة أو تحويل لنتيجة الوعد. وهذا يجعلها خطوة إضافية غير ضارة ولكنها غير ضرورية في مسار الوعد.
لماذا تمت كتابتها بهذه الطريقة؟
من المحتمل أن يكون خطأ مطبعي أو بقايا من المفاهيم الخاطئة السابقة حول الوعود. عندما تم تقديم الوعود، اعتقد بعض المطورين خطأً أن .then() بحاجة إلى إرجاع وعد لمواصلة السلسلة. ونتيجة لذلك، أضافوا هذا الاستدعاء .then() غير الضروري للتأكد من أن القيمة التي يتم إرجاعها تظل دائمًا وعدًا، حتى لو كانت مطابقة للمدخل.
الفرق بين إرجاع .then() و حذفه
رغم أنه مكافئ لغويًا، إلا أن هناك اختلافات طفيفة بين إرجاع .then() وحذفه:
حالات الحافة
في حالات نادرة، قد يكون .then(function(a){ return a; }) لها سلوكيات غير معتادة:
الاستنتاج
بشكل عام، .then(function(a){ return a; }) هو لا -op لا يضيف أي قيمة إلى سلسلة الوعد. ويجب حذفه ما لم يكن هناك سبب مقنع لاستخدامه، مثل تجنب الوعود المشتركة أو التعامل مع السلوكيات الغامضة ذات الصلة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3