علی یاری زاده
علی یاری زاده
خواندن ۳ دقیقه·۳ سال پیش

متدهای کاربردی آرایه ها در JavaScript | بخش دوم

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

قبل از شروع بهتره درمورد تفاوت متد(method) و تابع (function) یه توضیح بدم:
در اصل فرق چندانی ندارن، چون در هرصورت تابع حساب میشن و یک کار خاص انجام میدن. ولی در کل به توابعی که از اعضای یک کلاس خاص هستن و به یک object نسبت داده میشن متد گفته میشه.


جستجو در آرایه به کمک متد find:

let users = [ { name: 'ali', age: 22 }, { name: 'reza', age: 22 }, { name: 'zahra', age: 18 }, { name: 'nafas', age: 26 }, { name: 'hamed', age: 25 } ] let result = users.find(user => user.age === 22);
console.log(result); //output { name: 'ali', age: 22 }

ما از آرایه ای که مشخص کردیم متد find رو صدا کردیم، و گفتیم دنبال عنصری باش که فیلد age اون برابر با 22 باشه. و خروجی بالا رو به ما برگردوند به همین راحتی....!
نکته: دوستان به آرایه دقت کنید ما دوتا از عناصر رو داریم که فیلد age اونها برابر با 22 هست ولی این متد اولین عنصری رو ببینه که با شرط برابره رو برمیگردونه. ;)


متد indexOf :

به کمک این دوتا متد میشه ما اندیس (شماره محل قرار گیری عنصر در آرایه) یا همون index رو به دست بیاریم.
البته از این متدها برای جستجو مقادیر در آرایه ها بیشتر استفاده میشه که مقدار مورد نظر موجوده یا نه.

let numbers = [11, 22, 33, 44, 55, 66, 77, 88, 99];
console.log(numbers.indexOf(55)) //output 4 console.log(numbers.indexOf(56)) //output -1

همونطور که در این مثال میبینید اگر عنصر مورد نظر رو پیدا کنه شماره index اون رو برمیگردونه در غیراین صورت عدد 1- برگشت میخوره.

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

به این مثال توجه کنید:

let numbers = [11, 22, 33, 77, 44, 55, 66, 77, 88, 99]; console.log(numbers.indexOf(77, 4)) // 7

به این متد گفتیم که دنبال عدد 77 بگرد ولی از اندیس 4 به بعد شروع کن به جستجو این عدد. به همین دلیل عدد 7 برای ما برگشت داده میشه.


تولید آرایه جدید به کمک متد slice:


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

let numbers = [11, 22, 33, 44, 55, 66, 77, 88, 99];
console.log(numbers.slice(5)); // output [ 55, 66, 77, 88, 99 ] console.log(numbers.slice(2, 7)) // output [ 33, 77, 44, 55, 66 ]

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


چسباندن دو آرایه به هم به وسیله متد concat:

let arrOne = [1, 2, 3, 4, 5]; let arrTwo = [6, 7, 8, 9, 10]; console.log(arrOne.concat(arrTwo)); //output [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

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


متد some:

let numbers = [63, 23, 5, 6, 7, 2, 9, 10, 11, 12, 13];
console.log(numbers.some(element => element < 5 )); // true console.log(numbers.some(element => element === 100 )); // false

این متد چک میکنه اعضای آرایه با تابع ارائه شده سازگار هستن یا نه. مقدار برگشتی این متد اگر حداقل یکی از عناصر سازگار باشه true و اگر سازگار نباشه falseه.


خب به پایان این بخش رسیدیم، ممنون از این که وقت گذاشتین و این پست رو خوندین.

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

خوشحال میشم نظرتون رو برام بنویسید :)))))))





جاوااسکریپتarraysآموزشبرنامه نویسیjavascript
BackEnd developer, nodeJs
شاید از این پست‌ها خوشتان بیاید