View Full Version : سوال در مورد این syntax
soroush.elec
جمعه 14 تیر 1392, 16:04 عصر
سلام دوستان به کد زیر توجه کنید
(function drawFrame () {
}());
من معنی استفاده از این پرانتزهای اضافه در اول و آخر تعریف فانکشن را نمی فهمم.
jalil_gh
جمعه 14 تیر 1392, 16:21 عصر
به اینا میگن self executing function . یعنی وقتی تابع رو اینجوری تعریف میکنی، همون موقع که تابع تعریف میشه بلافاصله اجرا میشه.
afshin9032
سه شنبه 18 تیر 1392, 13:46 عصر
تو پیاده سازی پلاگین های jquery هم این روش زیاد استفاده میشه .
cups_of_java
سه شنبه 18 تیر 1392, 14:29 عصر
این یه تابع ساده هست:
function() {
}
هر وقت شما یه چیزی و جلوش مثل تابع پرانتز باز بسته کنی اون رو اجرا میکنی (مثل خود یه تابع که اجرا میشه با پرانتز باز بسته جلو اسمش) فقط این تابع اسم نداره و بو قول دوستمون خودش خودشو فقط اجرا میکنه نه دیگران
(...)()
و نهایتن کل اینا رو توی یه ;() میزاری که حوزه جدیدی تعریف کنی و کلن میشه:
(function(parameters){ code... }(arguments));
این کار رو برای چی میکنن؟
برای اینکه شما یه حوزه Private درست کرده باشی که همه چی Local اون باشن و دیگران بیرون اون کد هر چیزی توی اون کد رو نبینن! این کار در Javascript سمت مرورگر و پلاگین ها همونطور که بچه ها گفتن خیلی انجام میشه تا اسامی متغیر ها و متد ها یا هم قاطی نشن و هر کدی قابل مدیریت باشه و همه دل و رودش بیرون نریخته باشه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.