بریم سر اصل مطلب، توی این پست میخوام خیلی سریع چنتا از Array method های JS که خیلی به گوشمون نخوردن رو بگم و با کاربرد هاشون آشنا بشیم.
این متد به شخصه برای خود من از همه هیجان انگیز تره اگر SQL کار کرده باشید یک دستوری وجود داره تحت همین عنوان که در ساده ترین حالت ممکن، دیتارو group میکنه (دسته بندی میکنه).
روش استفاده از این متد به شکل زیر هستش، تصور کنید یک آرایه داریم از people:
const people = [ { name: "Masoud", age: 19, job: "Frontend developer" }, { name: "Amir", age: 27, job: "Backend developer" }, { name: "Arsalan", age: 22, job: "Backend developer" }, { name: "Ali", age: 21, job: "Electronic engeener" }, ];
میخوایم افراد رو براساس شغلشون دسته بندی کنیم:
const groupedPeople = Object.groupBy(people, (person) => person.job);
به عنوان آرگومان اول Array رو دریافت میکند و آرگومان دوم یک تابع که این تابع هر کدام از عناصر آرایه رو به صورت پارامتر دریافت کرده و هرکدام از آنهارا بازگرداند طبق اون property ارایه دسته بندی میشه و خروجی هم یک Object هست.
نکته: این فیچر توسط اکثر مرورگر ها پشتیبانی میشه (برای safari هنوز پشتیبانی نمیشود)
{ 'Frontend developer': [ { name: 'Masoud', age: 19, job: 'Frontend developer' } ], 'Backend developer': [ { name: 'Amir', age: 27, job: 'Backend developer' }, { name: 'Arsalan', age: 22, job: 'Backend developer' } ], 'Electronic engeener': [ { name: 'Ali', age: 21, job: 'Electronic engeener' } ] }
توصیه میشه از این متد استفاده نکنید چراکه منسوخ شده، صرفا بررسی میکنیم که اگر جایی چنین کدی رو دیدید بتونید متوجه منظورش بشید.
کارکردش سادست، دوتا آرگومان از ما میگیره، اولی یک index هست و دومی مقداری که قراره توی اون index از ارایه جای گذاری بشه. (شما مقدار index رو منفی هم میتونید بدید به طور مثال -1 آخرین عنصر آرایه رو درنظر میگیره)