عبارت فراخواني سريع توابع يك طريق مطلوب براي به كارگيري از توابع طراحي اپليكيشن ميباشد، دراين مقاله قصد داريم درباره عبارت فراخواني سريع توابع حرف كنيم.
عبارت فراخواني سريع توابع يكياز دستوراتي ميباشد كه تحت عنوان فراخواني كننده سريع توابع شناخته ميگردد، شايد شما پيش از اين اين نوع از سينتكس ها را مشاهده كرده باشيد، ما دراين مقاله قصد داريم پاره اي بيشتر درباره عبارت فراخواني سريع توابع و كاربردهاي آن سخن كنيم و شيوه كاركرد آن را به طور بدون نقص براي شما توضيح دهيم، براين اساس مارا درين مقاله ملازمت نمائيد. پيش از استارت مقاله دقت داشته باشيد كه مراد از IIFE خلاصه گرديده عبارت Immediately-Invoked Function Expression ميباشد كه به معناي عبارت فراخواني سريع توابع است.
تعريفوتمجيد توابع در مقابل عبارت تابع
پيش از آن كه ما بتوانيم حافظه بگيريم كه چرا يك IIFE يا اين كه به عبارتي عبارت فراخاني سريع توابع براي ما اثر گذار ميباشد ما مي بايست آغاز به طور صحيح متوجه شويم كه IIFE دقيقا چيست تا بعد درباره heck حرف كنيم. ما در بالا فعاليت خويش را با حدس يك تابع بي آلايش استارت ميكنيم، تابع پايين را در حيث بگيريد:
**FUNCTION DECLARATION**
function doSomething(){
// ...do something...
};
بسيار خب نكات كليدي كه درين كد وجود دارا هستند مشمول كلمه و واژه كليدي function و سپس اسم تابع به اسم doSomething و آنگاه () و در پايان نيز {} است. نحوه ديگر براي تمجيد يك تابع تعريف و تمجيد آن از روش عبارت تابع است، به سينتكس پايين دقت نماييد:
**FUNCTION EXPRESSION**
var doSomething = function(){
// ...do something...
};
به طور بصري تفاوت اساسي در ميان اين دو سينتكس نكته بسيار كوچكي است و در واقع ما هنوز هم هر دو اين توابع را به يك صورت فراخواني ميكنيم، آغاز اسم تابع را مي نويسيم و سپس () قرار ميدهيم. پس اختلال و تفاوت اساسي در كجاست؟
تفاوت اساسي در واقع پاره اي غامض ميباشد، همان گونه كه ميتوانيد ملاحظه كنيد وقتي كه پارسر جاوا اسكريپت هنگامي كه با واژه كليدي function رو به رو ميگردد معمولا فرض مي نمايد كه يك تابع درين نقطه تعريف و تمجيد شدهاست، مگر اين كه ما به طور مصرح به وي بگوييم كه غرض دراين مكان تعريف و تمجيد يك تابع وجود ندارد.
بازدید: