متدهای قرض گرفتن در جاوا اسکریپت

به نام خدا با عرض سلام و احترام خدمت شما دوستان عزیز.در ادامه آموزش جاوا اسکریت این جلسه قصد داریم به مبحث متدهای قرض گرفتن در جاوا اسکریپت بپردازیم.با ما همراه باشید.

متدهای قرض گرفتن از اشیا

در جاوا اسکریپت، می‌توانید متدهایی را از اشیاء دیگر قرض بگیرید تا برخی عملکردها را بدون به ارث بردن تمام ویژگی‌ها و متدهای آن‌ها بسازید.

جاوا اسکریپت دو متد()call و ()apply را برای تمام اشیاء تابع  ارائه می دهد که به یک تابع اجازه فراخوانی می دهد که گویی متد شی دیگری است.به عنوان مثال:

تفاوت بین متدهای ()call  و ()apply 

متدهای قرض گرفتن در جاوا اسکریپت

سینتکس متد ()apply  تقریباً با ()call  یکسان است، تنها تفاوت انها این است که متد ()call شامل لیستی از آرگومان ها مانند  call(thisObjarg1arg2, ...),  میباشد، در حالی که متد()apply   یک آرایه واحد از آرگومان ها مانند apply(thisObj, [argsArray]) را می گیرد.

به کروشه های مربع  ([])، که نشان دهنده یک آرایه است، در آخرین خط مثال زیر توجه کنید:

استفاده ازمتدهای داخلی

متد ()apply همچنین به شما امکان می دهد از متدهای داخلی برای انجام سریع و آسان برخی از تسک ها استفاده نمایید.یکی از این مثالها استفاده از  ()Math.max()/Math.min  برای یافتن مقدار ماکزیمم یا مینیمم در آرایه است که در صورت نبود این متدها نیاز به حلقه زدن روی مقادیر آرایه میباشد.

همانطور که از جلسه های قبل می دانید آرایه های جاوا اسکریپت متد  ()max ندارند.اما Math دارد، بنابراین می‌توانیم متد ()Math.max را مانند زیر اعمال نماییم:

نکته: اولین آرگومان برای ()call و ()apply  شیئی است که تابع باید روی آن فراخوانی شود. استفاده از null به عنوان اولین آرگومان مانند فراخوانی تابع بدون ارائه هیچ شیئی برای این اشاره گر در داخل تابع است.

عملگر جدید ES6بنام  spread operator راه کوتاه تری را برای به دست آوردن ماکزیمم یا مینیمم مقدار از یک آرایه بدون استفاده از متد()apply  ارائه میدهد به عنوان مثال:

گرچه هر دو  (...)spread و ()apply اگر  تعداد عناصر آرایه بیش از حد باشد یا ناموفق خواهند بود یا نتیجه نادرست را برمی گرداننددر این صورت شما می‌توانید از  ()Array.reduce برای یافتن حداکثر یا حداقل مقدار در یک آرایه عددی با مقایسه هر مقدار مانند زیر استفاده کنید:

خب دوستان گرامی به پایان جلسه متدهای قرض گرفتن در جاوا اسکریپت رسیدیم امیدواریم مورد توجه شما قرار گیرد.

سایرمقالات:

Event Propagation در جاوا اسکریپت

Event Listener در جاوا اسکریپت

 

 

 

 

 

 

 

 

 

 

برای امتیاز به این نوشته کلیک کنید!
[کل: 1 میانگین: 5]
اشتراک‌گذاری

علی فرجی هستم، برنامه نویس جاوا اسکریپت و ریکت با بیش از 5 سال تجربه. من عاشق برنامه نویسیم و همیشه به دنبال یادگیری چیزهای جدید هستم.همچنین یکی از بنیانگذار های سایت کدایت ، یک سایت آموزش برنامه نویسی در حوزه جاوا اسکریپت، ریکت، اندروید و ... هستم. امیدوارم بتوانم با دانش و تجربه خود به سایر برنامه نویسان کمک کنم تا در این زمینه پیشرفت کنند.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *