آرایه ها دارای متدهایی هستند که بوسیله آنها میتوان آیتم های آرایه خود را پیمایش کرد.
تفاوت ها و شباهت های تابع Array.every و Array.some
شباهت ها:
- هر دو آیتم های یک آرایه را پیمایش میکنند.
- هر دو دارای تابع بازگشتی هستند.
- هر دو مقدار بولین برگشت می دهند.
- تابع بازگشتی دارای دستور شرطی است.
تفاوت ها:
- در تابع Array.every در صورتی که شرط بر روی همه آیتم ها true باشد مقدار بازگشتی true خواهد بود.
- در تابع Array.some در صورتی که شرط بر روی یک آیتم false باشد مقدار بازگشتی false خواهد بود.
تفاوت ها و شباهت های تابع Array.forEach و Array.map
شباهت ها:
- هر دو آیتم های یک آرایه را پیمایش میکنند.
- هر دو دارای تابع بازگشتی هستند.
تفاوت ها:
- تابع Array.forEach مقدار بازگشتی ندارد. بلکه میتواند در هر بار پیمایش مقدار جاری را دریافت کند و به یک متغیر خارج از تابع تخصیص دهد.
- تابع Array.map دارای مقدار بازگشتی است و بسته به دستور موجود در تابع دارای یک آرایه است.
تفاوت ها و شباهت های تابع Array.find و تابع array.filter و تابع Array.findIndex
شباهت ها:
- هر سه به دنبال مقدار براساس شرط هستند
- هر سه دارای تابع بازگشتی هستند.
تفاوت ها:
- تابع Array.filter تمام مقادیر را بررسی کرده و مقادیری که طبق شرط true برگشت داده شود را در خروجی نهایی در قالب آرایه برگشت میدهد.
- تابع Array.find تمام مقادیر را بررسی کرده و تنها مقداری که طبق شرط true برگشت داده شود را در خروجی نهایی برگشت میدهد.
- تابع Array.findIndex در صورت true بودن شرط اندیس آیتم موردنظر را برگشت می دهد.
تفاوت ها و شباهت های تابع Array.indexOf و Array.lastIndexOf
شباهت ها:
- هر دو دارای دو پارامتر هستند که یک مقدار رشته ای دریافت و شروع به جستجو میکنند.
- هر دو یک مقدار عددی که موقعیت آیتم است برگشت میدهند.
- هر دو میتوانند از انتهای آرایه شروع به جستجو کنند.
تفاوت ها:
- تابع Array.indexOf از ابتدای آرایه شروع به جستجو میکند و به محض یافتن موقعیت آن را برگشت میدهد.
- تابع Array.lastIndexOf از انتهای آرایه شروع به جستجو میکند و به محض یافتن موقعیت آن را برگشت میدهد.
تفاوت ها و شباهت های تابع Array.reduce و Array.reduceRight
شباهت ها:
- هر دو دارای تابع بازگشتی هستند که حاصل نتیجه را در هر بار پیمایش به مقدار total که بعنوان پارامتر تابع بازگشتی است تخصیص میدهد.
- هر دو در انتها مقدار پارامتر total بازگشت میدهند.
- هر دو می توانند مقدار total را براساس دستور شرطی برگشت دهند.
تفاوت ها:
- تابع Array.reduce از سمت چپ شروع به پیمایش میکند اما تابع Array.reduceRight از سمت راست آرایه شروع به پیمایش میکند.
لیست توابع پیمایش یا حلقه در آرایه ها در جاوااسکریپت
نام تابع | توضیح | نحوه نوشتن |
تابع forEach |
این متد مربوط به پیمایش آیتم های آرایه است.این متد یک تابع را برای هریک از آیتم های آرایه فراخوانی می کند. |
array.forEach(function(currentValue, index, arr), thisValue); |
تابع map |
این متد شبیه به متد foreach است با این تفاوت که مقدار بازگشتی آن یک آرایه جدید است که در صورت تغییر مقادیر آرایه اصلی در آرایه جدید تغییر پیدا می کند. |
array.map(function(currentValue, index, arr), thisValue); |
تابع filter |
این متد یک تابع دریافت میکند که دارای دستور شرطی است و براساس آن تابع آیتم های آرایه موردنظر را فیلتر میکند. |
array.filter(function(currentValue, index, arr), thisValue); |
تابع reduce |
این متد یک تابع دریافت میکند که بر روی هر یک از مقادیر آرایه موردنظر کار میکند و در نهایت براساس محاسباتی که انجام میدهد یک مقدار را برگشت میدهد. |
array.reduce(function(total, currentValue, currentIndex, arr), initialValue); |
تابع reduceRight |
این متد یک تابع دریافت میکند که بر روی هر یک از مقادیر آرایه موردنظر کار میکند و در نهایت براساس محاسباتی که انجام میدهد یک مقدار را برگشت میدهد. |
array.reduce(function(total, currentValue, currentIndex, arr), initialValue); |
تابع every |
این متد بر روی تک تک المنت ها اجرا می شود و در صورتی که یکی از مقادیر false برگشت دهد سایر مقادیر را چک نمی کند. |
array.every(function(currentValue, index, arr), thisValue); |
تابع some |
این متد بر روی تک تک المنت ها اجرا می شود و در صورتی که یکی از مقادیر true برگشت دهد سایر مقادیر را چک نمی کند. |
array.some(function(currentValue, index, arr), thisValue); |
تابع indexOf |
این متد یک مقدار رشته ای دریافت و درون آرایه موردنظر جستجو میکند.در صورت پیدا کردن واژه موردنظر موقعیت کاراکتر را برگشت میدهد. |
array.indexOf(item, start); |
تابع lastIndexOf |
این متد یک مقدار رشته ای دریافت و درون آرایه موردنظر از انتها جستجو میکند.در صورت پیدا کردن واژه موردنظر موقعیت کاراکتر را برگشت میدهد.جستجو از انتهای آرایه به ابتدا است |
array.lastIndexOf(item, start); |
تابع includes |
با استفاده از این متد میتوان در آرایه موردنظر مقدار خود را جستجو کرد و مطمعن شد که مقدار موردنظر وجود دارد یا خیر. |
array.includes(element, start); |
تابع find |
این متد شبیه به متد array.filter است با این تفاوت که این متد به محض پیدا کردن مقدار موردنظر آن را برگشت میدهد. |
array.find(function(currentValue, index, arr),thisValue); |
تابع findIndex |
این تابع شبیه به تابع array.indexOf و array.filter است و یک تابع را دریافت می کند و براساس دستور شرطی که وجود دارد اولین مقداری که پیدا کند موقعیت آن را برگشت می دهد. |
array.findIndex(function(currentValue, index, arr), thisValue); |
تابع Array.from | این متد از متدهای جدید اکما۶ است.
از این متد در هر آبجکتی که قابلیت iterable شدن و خصوصیت length داشته باشد مورد استفاده قرار می گیرد و یک آرایه برگشت می دهد |
Array.from(object, mapFunction, thisValue); |
تابع Array.keys | این تابع از توابع جدید es6 می باشد.
این تابع یک Array Iterator که هر کدام دارای کلید مخصوص هستند.با استفاده از متد next می توان به آیتم بعدی رفت. |
array.keys(); |