آموزش جاوا اسکریپت – آرایه ها در جاوا اسکریپت ۲

آموزش جاوا اسکریپت

با بخش دوم از آرایه ها در جاوا اسکریپت از سری آموزش جاوا اسکریپت در خدمت شما هستیم.

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

 

افزودن یا حذف المان ها در هر موقعیت

متد splice() متد خیلی همه کاره ای است که اجازه افزودن یا حذف المان ها از هر ایندکسی را می دهند

سینتکس کلی آن بصورت زیر است:

این متد سه پارامتر را دریافت می کند:

  • پارامتر اول ایندکس جایی که باید شروع کند است و مقدار این پارامتر اجباری است
  • پارامتر دوم شماره المانی که قصد دارید حذف کنید (اگر نمی خواهید حذف کنید ۰ قرار بدید) و مقدار این پارامتر اختیاری است
  • پارامتر سوم مجموعه ای از المان های جایگزین است که این هم اختیاری است.

نحوه کار کردن این متد را در مثال زیر ببینید:

متد splice() آرایه ای از المان های حذف شده را برگشت می دهد یا اگر المان حذف نشده باشد, همانند مثال بالا آرایه خالی برگشت می دهدو

اگر آرگومان دوم ست نشود, همه المان ها از اول تا اخر آرایه حذف می شوند.

برخلاف متدهای concat() و slice() , متد splice() آرایه را تغییر می دهد.

 

ساخت یک رشته از آرایه

جاهایی است که نیاز داریم از چسابندن المان های آرایه به هم دیگر یم رشته ایجاد کنیم. برای اینکار از متد join() استفاده می کنیم.

این متد یک پارامتر اختیاری را به عنوان جدا کننده دریافت می کند که بین هر المان قرار می گیرد. اگر این پارامتر را ست نکند بصورت پیش فرض جداکننده کاما (,) در نظر گرفته می شود.

شما می توانید آرایه را بصورت رشته جدا شده با کاما توسط متد toString() تبدیل کنید. این متد یک پارامتر جداکننده را مثل join() دریافت نمی کند.

 

استخراج بخشی از آرایه

اگر می خواهید بخشی از یک آرایه را جدا کنید اما آرایه اصلی را نیز بدون تغییر رها کنید می توانید از متد slice() بهره ببرید.

این متد ۲ پارامتر دریافت می کند: ایندکس شروع (که از آنجا عملیات استخراج یا همان کپی انجام شود) و یک ایندکس پایان اختیاری (که قبل از آن عملیات استخراج به پایان می رسد.)

سینتکس آن بصورت arr.slice(startIndex, endIndex) است.

اگر پارامتر endIndex ست نشود, همه المان ها از شروعی که مشخص کردید تا پایان آرایه استخراج می شود.

می توانید یک مقدار منفی هم قرار بدید تا از آخر به اول عملیات استخراج را شروع کند.

 

ترکیب دو یک چند آرایه

متد concat() می توانید دو یا چند آرایه را باهم ترکیب یا ادغام کندو این متدها آرایه فعلی را تغییر نمی دهند, به جای آن یک آرایه جدید را برگشت می دهد:

متد concat() چندین آرایه را نیز دریافت کنید, بنابراین هر چقدر آرایه که خواستید می توانید باهمدیگر ترکیب کنید:

 

جستجو در آرایه ها

اگر قصد جستجو مقدار خاصی در آرایه هستید, به راحتی می توانید از indexOf() و lastIndexOf() استفاده کنید. اگر مقدار یافت شد, هر دو این متدها, ایندکس المان را برگشت می دهند.

اگر یافت نشد -۱ برگشت داده می شود.

متد indexOf() اولین مقدار یافت شده را برگشت می دهد, درحالی که lastIndexOf() آخرین مورد یافت شده را برگشت می دهد.

هر دو متدها یک مقدار عددی صحیح را بصورت پارامتر برای ایندکس شروع آرایه دریافت می کنند.

همچنین می توانید از متد includes() برای جستجوی المان خاصی در آرایه استفاده کنید. این متد همان پارامترهای مشابه indexOf() و lastIndexOf() را دریافت می کند, اما به جای true یا false شماره ایندکس را برگشت می دهد:

اگر قصد جستجو بر اساس شرط را دارید می توانید از متد find() که در ES6 معرفی شده است استفاده کنید.

این متد مقدار اولین المان یافت شده از آرایه را برگشت می دهد و اگر پیدا نشد هم undefined برگشت داده می شود.

یک متد مشابه به find() نیز findIndex() است که به جای مقدار, ایندکس المان را برگشت می دهد.

متد find() فقط اولین المان یافت شده را برگشت میدهد, به هر حال اگر می خواهید تمام المان های یافت شده را دریافت کنید از متد filter() استفاده کنید.

متد filter() یک آرایه جدید با همه المان های یافت شده ایجاد می کند.

 

امیدوارم  از آرایه ها در جاوا اسکریپت نهایت استفاده را برده باشید.

در بخش بعدی با نحوه مرتب سازی آرایه ها در جاوا اسکریپت آشنا می شوید.

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق باشید.

حسن شفیعی علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم

آموزش های رایگان بیشتر در اینستاگرام ما ...

NETPARADIS /
مطالب زیر را حتما بخوانید
دیدگاه کاربران

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

    دوره های آموزشی