متد مرتبط سازی آرایه در JS
هر نوع داده (data type) دارای متدها و ویژگی های مخصوص به خود است. در این بخش متدهای مرتب سازی آرایه را بررسی می کنیم.
array.sort() مرتب سازی آرایه - کوچک به بزرگ array.reverse() مرتب سازی آرایه به صورت بالعکس array.toSorted() مرتب سازی آرایه - کوچک به بزرگ array.toReversed() مرتب سازی آرایه به صورت بالعکس random sort مرتب سازی آرایه به صورت تصادفی در JS min & max حداقل یا حداکثر با متد sort array objects sort مرتب سازی اشیاء آرایه در JS
متد sort() در JS
متد sort()، المان های آرایه را بر اساس حروف الفبا، از کوچک به بزرگ مرتب می کند.
const persons = ["Ehsan", "Amir", "Reza", "Mobin"];
persons.sort();
مرتب سازی آرایه بر اساس اعداد
نکته: تابع sort()، المان های آرایه را بر اساس حروف الفبا و به عنوان رشته مرتب می کند.
const numbers = [70, 7, 100, 1, 15, 5];
numbers.sort();
برای مرتب کردن آرایه بر اساس اعداد می توان از ترفند زیر استفاده کرد.
array.sort(function (a, b) {
return a - b
});
const numbers = [70, 7, 100, 1, 15, 5];
numbers.sort(function (a, b) { return a - b });
نکته: با تغییر a - b به b - a، مرتب کردن بر اساس عدد به صورت بزرگ به کوچک می شود.
const numbers = [70, 7, 100, 1, 15, 5];
numbers.sort(function (a, b) { return b - a });
متد reverse() در JS
متد reverse()، المان های آرایه را معکوس می کند.
const persons= ["Ehsan", "Amir", "Reza", "Mobin"];
persons.reverse();
نکته: با ترکیب متد sort() و reverse()، المان های آرایه را بر اساس حروف الفبا، از بزرگ به کوچک مرتب می شوند.
const persons= ["Ehsan", "Amir", "Reza", "Mobin"];
persons.sort();
persons.reverse();
متد آرایه toSorted() در JS
متد toSorted()، عملکردی مشابه sort دارد.
نکته: متد sort، پس از مرتب سازی نتیجه را در متغیر اصلی می ریزد.
نکته: متد toSorted، پس از مرتب سازی، متغیر اصلی را تغییر نمی دهد و نتیجه را در برمی گرداند.
const persons = ["Ehsan", "Amir", "Reza", "Mobin"];
const sorted = persons.toSorted();
متد آرایه toReversed() در JS
متد toReversed()، عملکردی مشابه reverse دارد.
نکته: متد reverse، پس از مرتب سازی نتیجه را در متغیر اصلی می ریزد.
نکته: متد toReversed، پس از مرتب سازی، متغیر اصلی را تغییر نمی دهد و نتیجه را در برمی گرداند.
const persons = ["Ehsan", "Amir", "Reza", "Mobin"];
const reversed = persons.toReversed();
مرتبسازی آرایه به صورت تصادفی در JS
با متد sort و استفاده از یک تابع مرتب سازی، می توانید یک آرایه عددی را به صورت تصادفی مرتب کنید.
const numbers = [70, 7, 100, 1, 15, 5];
numbers.sort(function () { return 0.5 - Math.random() });
حداقل یا حداکثر آرایه در JS
پس از مرتب کردن آرایه با متد sort:
- کوچک ترین المان در خانه صفرم قرار می گیرد.
- بزرگ ترین المان در خانه آخر قرار می گیرد.
const numbers = [70, 7, 100, 1, 15, 5];
numbers.sort(function (a, b) { return a - b });
numbers[0]; // کوچکترین مقدار
const numbers = [70, 7, 100, 1, 15, 5];
numbers.sort(function (a, b) { return a - b });
numbers[numbers.length - 1]; // بزرگ ترین مقدار
مرتب سازی اشیاء آرایه در JS
آرایه ها ممکن است حاوی اشیاء باشند.
const persons = [
{name: "Ehsan", age: 30},
{name: "Ali", age: 35},
{name: "Mobin", age: 20}
];
برای مرتب سازی اشیاء داخل آرایه می توان از تابع مرتب سازی استفاده کرد.
persons.sort(function (a, b) { return a.age - b.age });
خلاصه درس
در این آموزش با موارد زیر آشنا شدیم:
- مرتب سازی آریه - sort()
- معکوس کردن - reverse()
- متد toSorted()
- متد toReversed()
- مرتب سازی آرایه عددی
- مرتب سازی تصادفی
- بزرگ ترین و کوچک ترین مقدار آرایه
- مرتب سازی آرایه بر اساس اشیاء