متدهای آرایه در جاوا اسکریپت به ما کمک می کنند تا به بهترین نحو از آرایه های جاوا اسکریپت استفاده کنیم. در این آموزش به بررسی متدهای کار با آرایه در جاوا اسکریپت می پردازیم.
همچنین قبل از مطالعه این بخش می توانید به مقاله آموزش آرایه ها در جاوا اسکریپت مراجعه کنید.
تبدیل کردن آرایه به رشته
متد ()toString در زبان برنامه نویسی جاوا اسکریپت، یک آرایه را به یک رشته واحد تبدیل می کند.
متد ()join
این متد نیز تمام عنصرهای یک آرایه را به یک رشته ی واحد تبدیل می کند. درست مانند ()toString ، اما متد ()join به عنوان ورودی یک پارامتر می پذیرد که با استفاده از آن شما می توانید یک جدا کننده ای را مشخص کنید. مثال زیر نحوه انجام این کار را نشان می دهد.
اضافه کردن و کم کردن عناصر در آرایه
وقتی که با آرایه ها کار می کنیم، این کار سختی نیست که عنصرهای آرایه را حذف کرده و عنصرهای جدید اضافه کنیم.
متد ()pop
این متد آخرین عنصر از یک آرایه را خارج می کند و در حقیقت از عنصر را از آرایه حذف می کند.
متد ()pop مقدار خارج شده (popped out) را بر می گرداند.
متد ()push
متد ()push یک عنصر جدید را به آرایه اضافه می کند. این مقدار جدید در انتهای آرایه قرار می گیرد.
متد ()push در انتها طول آرایه ی جدید را بر می گرداند. همانطور که در مثال زیر می بینید مقدار x متغیر پس از اجرای دستور fruits.push(“kiwi”) برابر با 5 می شود.
جا به جا کردن عنصرها
جا به جا کردن نیز مانند خارج کردن عناصر آرایه می باشد، فقط به جای عمل کردن روی آخرین عنصر روی اولین عنصر کار می کند.
متد ()shift اولین عنصر آرایه را حذف کرده و تمام عنصرهای دیگر را به اول آرایه شیفت می دهد.
متد ()shift می تواند رشته ای که جا به جا شده بود را بر می گرداند. مثال زیر نحوه انجام این کار را نشان می دهد.
متد ()unshift یک عنصر جدید به آرایه اضافه می کند (در ابتدای آرایه)، و عنصرهای قدیمی تر را یک خانه به جلو منتقل می کند.
در انتها متد ()unshift طول آرایه ی جدید را بر می گرداند.
تغییر دادن عنصرها
عنصرهای آرایه با شماره ی ایندکس خود (موقعیت خانه ای از حافظه که قرار دارند) قابل دسترسی هستند:
مشخصه ی length یک راه آسان برای الحاق کردن یک عنصر جدید به آرایه فراهم می کند:
حذف عنصرها
از آنجا که آرایه های جاوا اسکریپت اشیا محسوب می شوند، عنصرها می توانند با استفاده ازعملگر delete حذف شوند. پس از حذف مقدار undefined درون آن خانه از آرایه قرار می گیرد.
پیوند به یک آرایه با متد ()splice
متد ()splice می تواند برای اضافه کردن آیتم های جدید به یک آرایه استفاده شود:
اولین پارامتر (2) موقعیتی که عنصرهای جدید باید در آنجا اضافه شوند (پیوند بخورد) را تعریف می کند.
دومین پارامتر (0) این را که چند عنصر باید حذف شوند را تعریف می کند. این عناصر از انتهای آرایه حذف می گردند.
بقیه ی پارامترها ("Lemon" , "Kiwi") عنصرهای جدید که باید اضافه شوند را تعریف می کند.
خروجی دستور بالا به شکل زیر خواهد بود:
متد ()splice در برگشت یک آرایه را با آیتم های حذف شده بر می گرداند.
خروجی دستور بالا به شکل زیر است:
استفاده از متد ()splice برای حذف عنصرها
با تنظیمات هوشمندانه پارامترها شما می توانید از متد ()splice در جاوا اسکریپت برای حذف عنصرها بدون ایجاد حفره در یک آرایه استفاده کنید. پس از اجرای دستورات زیر مقدار Banana از اول آرایه fruits حذف خواهد شد.
اولین پارامتر (0) موقعیتی که عنصرهای جدید باید در آنجا اضافه شوند را تعریف می کند.
پارامتر دوم (1) اینکه چه تعداد عنصر باید حذف شود را تعریف می کند.
در این حالت عنصری برای اضافه شدن وجود ندارد و تنها مقداری از آرایه حذف می گردد.
ادغام آرایه ها با متد ()concat
متد ()concat یک آرایه ی جدید را با ادغام کردن آرایه های فعلی بوجود می آورد. بعد از اجرای دستورات زیر عناصر آرایه myBoys به انتهای آرایه myGirls اضافه می شوند.
متد ()concat می تواند هر تعداد آرایه ای را بپذیرد و آن ها با آرایه فعلی پیوند دهد.
بعد از اجرای دستورات بالا عناصر آرایه های arr2 و arr3 به ترتیب به آرایه arr1 اضافه می شوند.
متد ()concat همچنین می تواند رشته ها را بعنوان ورودی دریافت کند و آن ها را به انتهای آرایه پیوند دهد. مثال زیر نحوه انجام این کار را نشان می دهد.
برش زدن یک آرایه با متد ()slice
متد ()slice یک قسمت از یک آرایه را برش می زند و یک آرایه ی جدید می سازد. این مثال یک قسمت از آرایه را که از عنصر 1 ("Orange") شروع می شود برش می زند و آرایه جدید را درون citrus قرار می دهد.
مثال زیر یک قسمت از آرایه را که از عنصر 3 ("Apple") شروع می شود را برش می زند و در آرایه citrus قرار می دهد.
متد ()slice می تواند دو ورودی مانند slice(1, 3) دریافت کند. سپس این متد عنصرها را از ورودی اول انتخاب کرده و تا آخر به غیر از عنصر آخر انتخاب می کند و در یک آرایه جدید قرار می دهد. دستور زیر تنها مقادیر Orange و Lemon را انتخاب می کند و در آرایه citrus قرار می دهد.
اگر همانند مثال اول، ورودی آخر حذف شده باشد، متد ()slice بقیه ی آرایه را برش می زند و در آرایه جدید قرار می دهد.
پیدا کردن مقادیر حداکثر و حداقل در یک آرایه
در آرایه های جاوا اسکریپت هیچ قابلیتی برای پیدا کردن بزرگترین و کوچکترین مقدار تعبیه نشده است.