متدهای آرایه در جاوااسکریپت

از ویکی کد
پرش به ناوبری پرش به جستجو
دورهٔ آموزشی جاوااسکریپت
Javascript.jpg
جاوااسکریپت
موارد آموزشی
۱آموزش جاوااسکریپت
۲مقدمه‌ای بر جاوااسکریپت
۳قوانین و اصول اولیه زبان جاوااسکریپت
۴خروجی جاوااسکریپت
۵عبارت‌ها در جاوااسکریپت
۶شیوهٔ نوشتن دستورات در جاوااسکریپت
۷نظرات یا کامنت‌ها (Comments) در جاوااسکریپت
۸متغیرها در جاوااسکریپت
۹عملگرهای جاوااسکریپت
۱۰عملگرهای ریاضی در جاوااسکریپت
۱۱عملگرهای مقداردهی در جاوااسکریپت
۱۲انواع داده‌ها در جاوااسکریپت
۱۳توابع در جاوااسکریپت
۱۴اشیاء (object) در جاوااسکریپت
۱۵رویدادها در جاوااسکریپت
۱۶رشته‌های متنی (string) در جاوااسکریپت
۱۷متدهای نوع داده متنی یا رشته‌ای در جاوااسکریپت
۱۸اعداد در جاوااسکریپت
۱۹متدهای داده‌های عددی در جاوااسکریپت
۲۰آرایه‌ها در جاوااسکریپت
۲۱متدهای آرایه در جاوااسکریپت
۲۲مرتب‌سازی آرایه‌ها در جاوااسکریپت
۲۳متدهای پیمایش آرایه در جاوااسکریپت
۲۴اشیاء تاریخ و زمان در جاوااسکریپت
۲۵فرمت‌های تاریخ و زمان در جاوااسکریپت
۲۶متدهای دریافت تاریخ و زمان در جاوااسکریپت
۲۷متدهای تنظیم زمان و تاریخ در جاوااسکریپت
۲۸شی ریاضی (Math) در جاوااسکریپت
۲۹ایجاد عدد تصادفی در جاوااسکریپت
۳۰مقادیر بولین (Booleans) در جاوااسکریپت
۳۱عملگرهای منطقی و مقایسه‌ای در جاوااسکریپت
۳۲ساختار if else و else if در جاوااسکریپت
۳۳تکه کد Switch در جاوا اسکریپت
۳۴حلقه For در جاوااسکریپت
۳۵حلقه While در جاوااسکریپت
۳۶کلمات کلیدی Break و Continue در جاوااسکریپت
۳۷تبدیل نوع داده‌ها در جاوااسکریپت
۳۸عملیات‌های بیتی در جاوااسکریپت
۳۹عبارات با قاعده در جاوااسکریپت
۴۰خطاها در جاوااسکریپت - رخ دادن خطا و رفع آن
۴۱Scope در جاوااسکریپت
۴۲Hoisting یا جا به جایی کدها در جاوااسکریپت
۴۳استفاده از مد یا حالت سخت‌گیرانه (use strict) در جاوااسکریپت
۴۴کلمه کلیدی This در جاوااسکریپت
۴۵کلمه کلیدی Let در جاوااسکریپت
۴۶ثابت‌ها در جاوااسکریپت
۴۷تعریف توابع به صورت پیکان
۴۸کلاس‌ها در جاوااسکریپت
۴۹اشکال‌زدایی در جاوااسکریپت
۵۰راهنمای استایل و استانداردهای کدنویسی در جاوااسکریپت
۵۱بهترین تمرینات جاوااسکریپت
۵۲اشتباهات رایج در برنامه‌نویسی جاوااسکریپت
۵۳کارایی در جاوااسکریپت
۵۴کلمات رزرو شده در جاوااسکریپت
۵۵ورژن‌های جاوااسکریپت
۵۶ECMAScript 5 - JavaScript 5
۵۷ECMAScript 6 - ECMAScript 2015
۵۸جیسون (JSON) در جاوااسکریپت
فرم‌ها
۱فرم‌ها در جاوااسکریپت
۲API ارزشیابی در جاوااسکریپت
اشیاء (Object)
۱اشیاء در جاوااسکریپت
۲ویژگی‌های اشیاء در جاوااسکریپت
۳متدهای اشیاء در جاوااسکریپت
۴روش‌های دسترسی به شیء در جاوااسکریپت
۵سازنده‌های شیء در جاوااسکریپت
۶شکل اصلی شیء در جاوااسکریپت
۷متدهای شیء در ورژن ES5 جاوااسکریپت
تابع
۱تعریف تابع در جاوااسکریپت
۲پارامتر توابع در جاوااسکریپت
۳فراخوانی تابع در جاوااسکریپت
۴صدا کردن تابع در جاوااسکریپت
۵تابع Apply در جاوااسکریپت
۶بسته‌ها (به انگلیسی: Closures) در جاوااسکریپت
HTML DOM
۱HTML DOM در جاوااسکریپت
۲متدهای HTML DOM در جاوااسکریپت
۳HTML DOM Document در جاوااسکریپت
۴عناصر HTML DOM در جاوااسکریپت
۵reeeeeeeeeeeeeeee
۶تست
۷تست
۸تست
۹تست
۱۰تست
۱۱تست
۱۲تست
۱۳تست

تبدیل آرایه‌ها به رشته‌های متنی یا String

متد​toString()​عناصر یک آرایه را به یک رشتهٔ متنی (که توسط ویرگول از یک دیگر جدا شده‌اند) تبدیل می‌کند. [۱]

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();

نتیجه:

Banana,Orange,Apple,Mango

متد​join()​نیز تمامی عناصر آرایه را در یک رشتهٔ متنی String به هم الحاق می‌کند.

این متد همانند متد​toString()​رفتار می‌کند، اما در این متد شما می‌توانید جداکننده خود را نیز مشخص کنید:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.join(" * ");

نتیجه:

Banana * Orange * Apple * Mango

حذف و اضافه کردن یک عنصر به آرایه

زمانی که شما با آرایه‌ها کار می‌کنید، حذف کردن عناصر و اضافه کردن عناصر جدید بسیار ساده است.

این کاری است که poping و pushing نامیده می‌شوند:

«حذف کردن عناصر» از یک آرایه pop کردن نامیده می‌شود، هل دادن یا «اضافه کردن یک عنصر» به یک آرایه push کردن نامیده می‌شود.

حذف کردن

متد​pop()​آخرین عنصر از یک آرایه را حذف می‌کند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.pop();              // Removes the last element ("Mango") from fruits

متد​pop()​مقداری را که حذف شده‌است را بازمی‌گرداند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.pop();      // the value of x is "Mango"

اضافه کردن

متد​push()​یک عنصر جدید را در یک آرایه (در آخر آرایه) اضافه می‌کند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi");       //  Adds a new element ("Kiwi") to fruits

متد​push()​طول جدید یک آرایه را بازمی‌گرداند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.push("Kiwi");   //  the value of x is 5

شیفت کردن عناصر

شیفت کردن، شبیه pop کردن است با این تفاوت که به جای عنصر آخر، روی عنصر اول کار می‌کند.

متد​shift()​اولین عنصر آرایه را پاک می‌کند و تمامی سایر عناصر را به یک اندیس پایین‌تر شیفت می‌کند.

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.shift();            // Removes the first element "Banana" from fruits

متد​shift()​رشتهٔ متنی ای را که شیفت شده‌است را بازمی‌گرداند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.shift();    // the value of x is "Banana"

متد​unshifts()​یک عنصر جدید را به یک ارایه (در ابتدای آرایه) اضافه می‌کند، و سایر عناصر قدیمی را unshift می‌کند.

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon");    // Adds a new element "Lemon" to fruits

متد​unshifts()​طول جدید آرایه را بازمی‌گرداند.

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon");    // Returns 5

تغییر عناصر

به عناصر آرایه با استفاده از اندیس عددیشان دسترسی پیدا می‌کنند:


مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[0] = "Kiwi";        // Changes the first element of fruits to "Kiwi"

ویژگی​length​یک راه ساده را برای اضافه کردن یک عنصر جدید به یک ارایه فراهم می‌کند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[fruits.length] = "Kiwi";          // Appends "Kiwi" to fruits

حذف عناصر آرایه

از آنجایی که آرایه‌های جاوااسکریپت object یا شی هستند، عناصر آنها می‌تواند با استفاده از عملگر​delete​حذف شود:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
delete fruits[0];           // Changes the first element in fruits to undefined


Splice کردن یک آرایه

می‌توان از متد​splice()​برای اضافه کردن آیتم‌های جدید به یک آرایه استفاده کرد:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 0, "Lemon", "Kiwi");

پارامتر اول (۲) موقعیت محلی را که عنصر جدید باید اضافه (پیوند بخورد) شود را تعریف می‌کند.

پارامتر دوم (۰) مشخص می‌کند چه تعداد از عناصر می‌بایست حذف شوند.

بقیه پارامترها ("kiwi", "lemon") عنصر جدیدی را که می‌بایست اضافه شود را تعریف می‌کند.

متد​splice()​آرایه ای با عناصر حذف شده را برمی‌گرداند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 2, "Lemon", "Kiwi");

استفاده از متد ()splice برای حذف کردن عناصر

با تنظیم صحیح پارامترهای متد، شما می‌توانید از متد​splice()​برای حذف عناصر آرایه استفاده کنید بدون اینکه خانه‌های خالی در آرایه مد نظر شما باقی بماند:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(0, 1);        // Removes the first element of fruits

پارامتر اول (۰) موقعیت محلی را که عنصر جدید باید اضافه (پیوند بخورد) شود را تعریف می‌کند.

پارامتر دوم (۱) مشخص می‌کند چه تعداد از عناصر می‌بایست حذف شوند.

سایر پارامترها مقدار دهی نشدند. عنصر جدیدی اضافه نخواهد شد.

یکی کردن (به انگلیسی: Merging) کردن آرایه‌ها

متد​concat()​یک آرایه جدید را با merge کردن یا یکی کردن آرایه‌های موجود می‌سازد:

مثال (یکی‌کردن دو آرایه)

var myGirls = ["Cecilie", "Lone"];
var myBoys = ["Emil", "Tobias", "Linus"];
var myChildren = myGirls.concat(myBoys);   // Concatenates (joins) myGirls and myBoys


متد​concat()​می‌تواند هر تعدادی از آرایه‌ها را به عنوان آرگومان دریافت کند:

مثال (یکی‌کردن سه آرایه)

var arr1 = ["Cecilie", "Lone"];
var arr2 = ["Emil", "Tobias", "Linus"];
var arr3 = ["Robin", "Morgan"];
var myChildren = arr1.concat(arr2, arr3);   // Concatenates arr1 with arr2 and arr3

متد​concat()​می‌تواند مقادیری را هم به عنوان آرگومان قبول کند:

مثال (ترکیب مقادیر آرایه)

var arr1 = ["Cecilie", "Lone"];
var myChildren = arr1.concat(["Emil", "Tobias", "Linus"]);

Slice کردن یک آرایه

متد​slice()​بخشی از یک آرایه را درون یک آرایه جدید جدا (به انگلیسی: Slice) می‌کند.

مثال زیر بخشی از آرایه را که از عنصر اول ("orange") شروع می‌شود را جدا می‌کند.

مثال

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1);


مثال زیر بخشی از آرایه را که از عنصر سوم ("Apple") شروع می‌شود را جدا یا slice می‌کند.

مثال

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(3);

متد​slice()​می‌تواند دو پارامتر ورودی همانند​slice(1, 3)​داشته باشد.

سپس متد عناصر را از نقطه آرگومان شروع به بعد (اما خود عنصر آخر را شامل نمی‌شود) تا عنصر آخر را انتخاب می‌کند.

مثال

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1, 3);

اگر آرگومان آخر را ننویسیم، همانند مثال اول، متد​slice()​ادامه عناصر آرایه را Slice یا جدا می‌کند.

مثال

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(2);

متد ()toString خودکار

زمانی که از متد​toString()​استفاده نکنیم، جاوااسکریپت به صورت خودکار یک آرایه را به یک رشته متنی که به وسیله ویرگول از یک دیگر جدا شده‌اند تبدیل می‌کند.

این امر همیشه زمانی که شما می‌خواهید یک آرایه را به عنوان خروجی داشته باشید، صدق می‌کند.

دو مثال زیر نتیجه یکسانی خواهند داشت:

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();

مثال

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;


پیدا کردن بیشترین و کمترین مقدار در یک آرایه

هیچ تابع پیشفرضی در جاوااسکریپت برای پیدا کردن بیشترین یا کمترین مقدار در یک آرایه وجود ندارد.

شما در فصل‌های آینده یاد خواهید گرفت که چگونه این مشکل را حل کنید.

مرتب‌سازی آرایه‌ها

مرتب کردن آرایه‌ها در فصل بعدی این آموزش، توضیح داده شده‌اند.

مرجع کامل آرایه جاوااسکریپت

برای مشاهده یک مرجع کامل در مورد آرایه‌ها در جاوااسکریپت، می‌توانید مقاله ما تحت عنوان مرجع کامل آرایه‌ها در جاوااسکریپت را مشاهده کنید.

این مرجع شامل توضیحات و مثال‌هایی از تمام ویژگی‌های آرایه و متدهای آن است.

منابع آموزشی