یک تعریف ساده از متد این است که، متد تابعی است که به یک کلاس تعلق دارد. در جاوااسکریپت، یک متد تابعی است که به یک شی یا مجموعهای از دستورالعملها تعلق دارد که وظیفهٔ خاصی را انجام میدهد. یک تابع کدی از دستورالعملهایی است که یک کار را انجام میدهد. شیء چیزی است با خواص و در انواع معین. به عنوان مثال پیراهن یک شی است و رنگ یا اندازه آن از ویژگیهای آن است.
برنامه نویس جاوا اسکریپت، توجه کن!
آیا بهتازگی به برنامهنویسی جاوا اسکریپت علاقهمند شدهاید و در استفاده از متدها مشکل دارید؟ یا شاید شما یک توسعهدهندهٔ باتجربه هستید که به دنبال افزایش دانش خود در مورد انواع مختلف متدهای جاوا اسکریپت هستید. چه تازهکار باشید یا نه، با هر سطح تجربهای، این مقاله برای شما مناسب است!
در این مقاله، ما انواع مختلف متدهای جاوا اسکریپت را معرفی کرده و نحوهٔ استفاده از آنها در پروژههای مختلف را بررسی خواهیم کرد.
فهرست مطالب
– تا از پرکاربردترین متدهای زبان برنامه نویسی جاوا اسکریپت
– متدهای رشتهای چه هستند؟
– متدهای آرایهای چه هستند؟
– متدهای شیء چه هستند؟
8 تا از پرکاربردترین متدهای زبان برنامه نویسی جاوا اسکریپت
جاوا اسکریپت، یک زبان برنامهنویسی همهکاره است که در طراحی و توسعهٔ بسیاری از محبوبترین وبسایتها و برنامههای کاربردی در فضای اینترنت استفاده شده است.
یکی از مهمترین ویژگیهای جاوا اسکریپت، که این زبان را بسیار قدرتمند میکند، توانایی آن در تغییر عناصر صفحهٔوب و افزایش تعامل با کاربران از طریق روشهای مختلف است.
این روشها، درواقع توابع از پیش ساخته شدهای هستند که در کتابخانه اصلی جاوا اسکریپت دردسترساند و به توسعهدهندگان این امکان را میدهند تا کارهای رایج را با سرعت و بهراحتی پیشببرند.
در این مقاله، برخی از مهمترین انواع متدهای جاوا اسکریپت، از جمله متدهای رشتهای، متدهای آرایه، متدهایشیء را بررسی خواهیمکرد.
تعدادی از رایجترین متدها را توضیح داده و نحوهٔ بهکارگیری آنها را بررسی میکنیم.
متدهای رشتهای چه هستند؟
رشتهها یکی از رایجترین انواع دادههایی هستند که در جاوا اسکریپت یافت میشوند.
چندین متد داخلی وجود دارد که میتوانید برای کار با آنها استفاده کنید.
متدهای آرایهای چه هستند؟
آرایهها، یکی دیگر از انواع دادههای اساسی در جاوا اسکریپت هستند و میتوان از آنها برای ذخیرهٔ مجموعهای از مقادیر مانند اعداد، رشتهها یا اشیاء دیگر استفاده کرد.
متدهای شیء چه هستند؟
آبجکتها یا شیءها یکی از متنوعترین انواع داده در جاوا اسکریپت هستند و میتوان از آنها برای نمایش ساختارهای دادهٔ پیچیده، که حاوی خواص و مقادیر متعدد هستند استفاده کرد.
Spread operator
اپراتور Spread یک آرایه را به عناصر آن گسترش میدهد. همچنین میتوان از آن برای حروف الفبای شیء استفاده کرد.
چرا باید Spread operator استفاده کنم؟
– این یک راه ساده و سریع برای نشاندادن آیتمهای یک آرایه است.
– برای آرایهها و اشیاء واقعی کار میکند.
– این یک راه سریع و شهودی برای انتقال استدلال است.
– فقط به سه نقطه نیاز دارد(…) !
For … of iterator
دستور for…of از طریق مجموعهٔ حلقه تکرار میشود و این امکان را برای شما فراهم میکند که آیتمهای خاصی را تغییر دهید. این جایگزین روش مرسوم انجام یک حلقه for است.
چرا باید از For … of iterator استفاده کنم؟
– این یک راه ساده برای افزودن یا بهروزرسانیهای متعدد است.
– برای انجام محاسبات (جمع، ضرب و غیره)
– مفید در استفاده از عبارات شرطی (اگر، while، switch).
– تولید کدهای پاک و خوانا.
برای مثال، فرض کنید یک آرایه به نام numbers داریم و میخواهیم مجموع تمامی اعداد در آن را محاسبه کنیم. میتوانیم این کار را با استفاده از دستور for…of انجام دهیم،
به این صورت که:
در این مثال، ابتدا یک آرایه با نام numbers تعریف شدهاست و سپس متغیر sum را برابر با صفر قرار میدهیم. سپس با استفاده از دستور for…of، به ترتیب هر عضو در آرایه را در متغیر number ذخیره کرده و با استفاده از این متغیر، مجموع تمامی اعداد در آرایه را محاسبه میکنیم.
دستور for…of بسیار خوانا و قابل فهم است و با استفاده از آن، میتوانید کد خود را سادهتر و خواناتر بنویسید.
Includes() method
متد include() برای بررسی اینکه آیا رشتهٔ خاصی در یک مجموعه وجود دارد و true یا false را برمی گرداند استفاده می شود. به خاطر داشته باشید که به حروف کوچک و بزرگ حساس است: اگر مورد داخل مجموعه SCHOOL باشد و مدرسه را جستجو کنید، false برمیگردد.
چرا باید از Includes() method استفاده کنم؟
– برای ایجاد قابلیت جستجوی ساده.
– این یک رویکرد شهودی برای تعیین وجود رشته است.
– از دستورات شرطی برای اصلاح، فیلترکردن و غیره استفاده میکند.
– منجر به افزایش خوانایی کد میشود.
در این مثال، ابتدا یک آرایه به نام fruits تعریف شدهاست. سپس با استفاده از دستور if…else و متد includes()، چک میکنیم که آیا مقدار ‘banana’ در آرایه fruits وجود دارد یا خیر. در این حالت، چون ‘banana’ در آرایه fruits وجود دارد، پیغام “The banana is in the list!” چاپ میشود.
استفاده از متد includes() بسیار ساده و کارآمداست و میتوانید آن را در بسیاری از حالات مفید استفاده کنید، مانند جستجوی عناصر تکراری در آرایه.
متد every()
متد every() در جاوا اسکریپت برای بررسی اینکه آیا همهی المانهای یک آرایه، شرط مشخصشده را برآورده میکنند یا نه استفاده میشود. این متد یک تابع بازگشتی به عنوان ورودی میپذیرد که برای هر المان آرایه فراخوانی میشود.
این متد، هر آیتم را بررسی میکند و true یا false را برمی گرداند.
چرا باید از متد every() استفاده کنم؟
– این اطمینان حاصل میکند که هر آیتم تست را پشت سر میگذارد.
– میتوانید با استفاده از توابع دستورات شرطی را انجام دهید.
در این مثال، تابع every() روی آرایه numbers فراخوانی شده و بهعنوان ورودی، یک تابع بازگشتی دریافت میکند که برای هر المان آرایه، بررسی میکند که آیا بزرگتر از صفر است یا نه.
با توجه به اینکه همهٔ المانهای آرایه، بزرگتر از صفر هستند، خروجی این مثال true است.
متد filter()
متد filter() در جاوا اسکریپت برای فیلترکردن یک آرایه با استفاده از یک تابع پیشفرض مورد استفاده قرار میگیرد. این تابع با صحبت کردن با یک تابع callback، هر عضو از آرایه را به تابع callback منتقل میکند و اگر خروجی تابع callback مقدار “true” باشد، عضو را در لیست نهایی ذخیره میکند.
چرا باید از متد filter() استفاده کنم؟
– میتوانید از تغییر آرایهٔ اصلی اجتناب کنید.
– این به شما امکان میدهد مواردی را که نیاز ندارید فیلتر کنید.
– کد خواناتری به شما میدهد.
به عنوان مثال، اگر میخواهید تمامی اعداد فرد را در یک آرایه به دست آورید، میتوانید از filter() استفاده کنید:
در اینجا، تابع callback مورد استفاده، با بررسی بقیه ۲ عدد آرایه برای هر رقم، بررسی میکند که آیا عدد فرد است یا نه. تمامی اعداد فرد در لیست odd Numbers قرار میگیرند.
Some() method
متد some() بررسی می کند که آیا برخی از عناصر در یک آرایه وجود دارند یا خیر و true یا false را برمیگرداند. این تا حدودی شبیه مفهوم متد include() است، با این تفاوت که آرگومان، یک تابع است و نه رشته.
چرا باید از متد some() استفاده کنم؟
– این اطمینان حاصل میکند که برخی از آیتمها تست را پشت سر گذاشتهاند.
– دستورات شرطی را با استفاده از توابع انجام میدهد.
– کد را به صورت تمیز و یکپارچه ارائه میدهد.
در این مثال، یک آرایه با نام numbers تعریف شده است که حاوی چند عدد صحیح است.
متد some() بر روی این آرایه فراخوانی شده و به عنوان پارامتر یک تابع callback به نام num => num > 10 دریافت میکند.
این تابع با گرفتن هر عضو آرایه به عنوان ورودی، بررسی میکند که آیا آن عدد بزرگتر از 10 است یا خیر. اگر حداقل یک عضو آرایه باشد که شرط داده شده را برآورده کند، مقدار true به عنوان خروجی از متد some() برگشت داده میشود.
در غیر این صورت، مقدار false برگشت داده میشود.
در این مثال، چون عضوی در آرایه numbers وجود دارد که بزرگتر از 10 است، مقدار true به عنوان خروجی از متد some() برگشت داده میشود.
متد map()
متد map() در جاوا اسکریپت برای اعمال یک تابع به هر عضو از یک آرایه و بازگشت یک آرایه جدید از نتایج استفاده میشود.
چرا باید از متد map() استفاده کنم؟
– به شما امکان میدهد از ایجاد تغییرات در آرایه اصلی خودداری کنید.
– شما میتوانید موارد مورد نظر خود را تغییر دهید.
– کد خواناتری به شما میدهد.
یک مثال ساده از استفاده از map() برای تبدیل دما از واحد سلسیوس به واحد فارنهایت، در زیر آمده است:
در این مثال، یک آرایه از دماهای درجه سلسیوس تعریف شده است. سپس با استفاده از متد map() و تابعی که به عنوان پارامتر ورودی به آن داده شده است، دماها به واحد فارنهایت تبدیل شده و در آرایهای جدید ذخیره شدهاند. در نهایت، محتوای آرایه جدید با استفاده از تابع console.log() نمایش داده شدهاست.
متد ()reduce
از متد ()reduce می توان برای تبدیل یک آرایه به چیز دیگری استفاده کرد، که می تواند یک عدد صحیح، یک شی، زنجیره ای از وعدهها (اجرای متوالی وعده ها) و غیره باشد. به دلایل عملی، یک مورد استفاده ساده میتواند جمع یک لیست اعداد صحیح به طور خلاصه، کل آرایه را به یک مقدار “کاهش” میدهد.
چرا باید از متد ()reduce استفاده کنم؟
– محاسبات را انجام دهید.
– یک مقدار را محاسبه کنید.
– موارد تکراری را بشمارید.
– اشیاء را بر اساس ویژگی گروه بندی کنید.
– وعده ها را به صورت متوالی اجرا کنید.
– این یک راه سریع برای انجام محاسبات است.
متد reduce در جاوا اسکریپت برای کاهش یک آرایه به یک مقدار واحد استفاده میشود.
برای مثال، فرض کنید میخواهیم مجموع یک آرایه از اعداد را با استفاده از reduce حساب کنیم.
کد زیر را در نظر بگیرید:
دراینمثال، پارامتر اول متد reduce یک تابع callback است که دو پارامتر accumulator و current Value را به عنوان ورودی دریافت میکند.
accumulator مقدار آخرین خروجی تابع callback در هر لحظه است و current Value هر عنصر آرایه است که در حالحاضر درحال پردازش است.
پارامتر دوم reduce مقدار شروعی برای accumulator است. در مثال بالا، ما ۰ را به عنوان مقدار شروعی انتخاب کردهایم.
در هر مرحله از اجرای تابع reduce، accumulator با خروجی تابع callback جدید جایگزین میشود و درنهایت مقدار accumulator بهعنوان خروجی کلی نشان میدهد.
بحث و نتیجهگیری
متدهای جاوا اسکریپت، ابزار قدرتمندی هستند که هر توسعهدهندهای باید در جعبه ابزار خود داشته باشد. فرقی نمیکند با رشتهها، آرایهها یا اشیا کار میکنید، استفاده از متدها در جاوا اسکریپت، قابلیت خوانایی و استفاده مجدد بالایی را به کد شما اضافه میکند. با درک انواع مختلف روشهای جاوا اسکریپت و نحوهٔ استفاده موثر از آنها، میتوانید کدهای تمیزتر و کارآمدتر بنویسید و تجربه کاربری بهتری برای مخاطبان خود ایجاد کنید.
بنابراین، استفاده از متدها به همراه کلاسها در جاوا اسکریپت، یکی از روشهای بهتر برای نوشتن کد خوانا، سازماندهی شده و قابل توسعه است.
آیا دلایل بیشتری میخواهی تا توانایی بالای متدها را در جاوا اسکریپت مشاهده کنی؟
همین امروز، یادگیری متدها در جاوا اسکریپت را شروع کن.
پس از مدتی، حتما متوجه خواهی شد که چه خوب شد که همین امروز یادگیری متدها در جاوا اسکریپت را استارت زدی!
منابع: freecodecamp، linuxhint