نمایش نتایج 1 تا 7 از 7

نام تاپیک: توابع و اشیا

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #7

    نقل قول: توابع و اشیا

    nodejs پیاده سازی زبان JavaScript برای برنامه نویسی Backend هست.

    شاید پیچیدگی مساله برای شما در این هست که توابع از نوع object هستند و در عین حال توابع برای ساختن objectهای دیگر هم استفاده می شود.

    توابع objectهایی هستند می توانند صدا زده شوند. مانند

    foo(str) {
    this.name = str
    }

    چون foo یک object هست پس می تونیم روی آن property تعریف کنیم:


    foo.version = 1.2;
    console.log(foo.version) // 1.2

    حالا بیایم و تابع رو صدا بزنیم:

    foo('sam')



    در این صدا زدن this به هر objectای که اشاره کند (می تونه this به هر چیزی در این لحظه اشاره کنه) اون object یک property با اسم name و مقدار ۱.۲ می گیرد و undefined برمی گرداند.

    حالا بیایم و این تابع را با keyword new صدا بزنیم:

    var f = new foo('sam');

    در این حالت قبل از اجرای کد داخل تابع موتور JavaScript (که در سوال شما nodejs) هست یک object خالی می سازد و آدرس آن را در this نگه می دارد. بعد از این مراحل کد درون تابع اجرا می شود و به آن object خالی property با نام name و مقدار 'sam' داده می شود و در نهایت آدرس آن object برگردانده می شود.

    اگر تجربه برنامه نویسی با یک زبان شیی گرا را دارین و می خوایید متوجه شوید در JavaScript چگونه می تونید اون مفاهیم رو پیاده کنید می تونید به لینک JavaScript Class - DashBrace مراجعه کنید.
    آخرین ویرایش به وسیله thegoodeveloper : شنبه 13 مهر 1398 در 11:33 صبح

تاپیک های مشابه

  1. سوال: خروجی توابع جاوا اسکریپت (توابع تودرتو)
    نوشته شده توسط abpsoft در بخش JavaScript و Framework های مبتنی بر آن
    پاسخ: 6
    آخرین پست: یک شنبه 15 خرداد 1390, 15:51 عصر
  2. سوال: چگونه می توان وقتی focusروی texboxقرار می گیردبتوان فارسی تایپ کرد
    نوشته شده توسط assimar42 در بخش JavaScript و Framework های مبتنی بر آن
    پاسخ: 5
    آخرین پست: جمعه 29 بهمن 1389, 22:49 عصر
  3. چگونه مي توان محتواي يك فيلد جدول را با توجه به اطلاعات وارده در تكس باكس روي يك ليبل نشان دهد؟
    نوشته شده توسط reshehri در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 1
    آخرین پست: یک شنبه 10 بهمن 1389, 17:19 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •