مرتب سازی ارایه ها را توضیح دهید.

0

مرتب سازی ارایه ها را توضیح دهید.

حسین برخورداری Answered question اکتبر 18, 2020
Add a Comment
1

مرتب سازی ارایه ها را توضیح دهید.

از دو تابع براي مرتب سازي عناصر آرایه استفاده میشود. تابعی به نام reverse() براي مرتب سازي عکس آرایه استفاده میشود. مثال:

var aColors = [“red”, “green”, “blue”];
aColors.reverse();
alert(aColors.toString()); //outputs “blue,green,red”

از طرف دیگر تابعی به نام sort() عناصر آرایه را به صورت صعودي بر حسب مقادیرشان مرتب می کند. در این صورت عناصر آرایه بر حسب کدهاي کاراکتري شان مرتب می شوند. مثال:

;var aColors = [“red”, “green”, “blue”, “yellow”]
aColors.sort();
alert(aColors.toString()); //outputs “blue,green,red,yellow”

در صورتی که عناصر آرایه اعداد باشند نتیجه کمی عجیب و غریب است:

var aColors = [3, 32, 2, 5]
aColors.sort();
alert(aColors.toString()); //outputs “2,3,32,5”

همانطور که اشاره شد متد sort() به صورت پیش فرض عناصر آرایه را به صورت الفبایی (بر حسب کدهاي کاراکتري آن ها) و به صورت صعودي مرتب می کند. چنانچه بخواهیم آرایه اي از اعداد را به صورت صعودي مرتب کنیم می بایست می بایست
از یک تابع مقایسهاي که در قالب یک آرگومان براي این متد فرستاده می شود استفاده کنیم. خود این تابع مقایسه اي همیشه گرفته، آن ها را با هم مقایسه کرده و آرایهي اصلی براساس مقادیر بازگشتی این تابع انجام می (a,b دو آرگومان) به عنوان مثال شود. مقدار بازگشتی تابع مقایسه اي به یکی از سه صورت زیر است:

چنانچه می بایست b آرگومان اول) قرار بگیرد مقداري مثبت را برمی گرداند. )a آرگومان دوم) قبل ازچنانچه می بایست مکان b و a تغییري نکند مقدار صفر را برمی گرداند. چنانچه می بایست a قبل  از b قرار بگیرد مقداري منفی را برمی گرداند. به عنوان مثال در صورتی که تابع زیر را به عنوان آرگومان براي متد sort().بفرستیم آرایه به صورت صعودي مرتب خواهد شد:

function Compare(a,b){
If(a>b){
Return 1;
}else if (a<b){
Return -1;
}else{
Return 0;
}
}

دقت داشته باشید که بدنه تابع فوق را می توان به شکل زیر کوتاهتر و ساده تر کرد ضمن اینکه همان عملکرد را خواهد داشت:

function Compare(a,b){
Return a-b;
}

براي مرتب سازي آرایه به صورت عددي نزولی کافی است جاي 1 و 1- در تابع مقایسه اي را عوض کنید.

منبع : انجمن علمی مهندسی فناوری اطلاعات دانشگاه پیام تور مرکز اران و بید گل

برای اموزش های ویدیویی زبان جاوا اسکیریپت به بستر ویدیو های اموزشی بروید

بستر اموزش های ویدویی 

حسین برخورداری Answered question اکتبر 18, 2020
Add a Comment
You are viewing 1 out of 1 answers, click here to view all answers.
Write your answer.
  • Active
  • Views2274 times
  • Answers1 answer
ورود به متاورس | متاورس ایرانی
ورود به متاورس ایران یا همان متاورس ملی

علامت ذره بین Tutorials سمت راست به رنگ قرمز به شما کمک خواهد کرد .

جدید ترین سوالات پرسیده شده

ایا ایدز گزفتم؟ 0 Answers | 0 Votes
انتخاب ورزش رزمی 0 Answers | 1 Vote
وزارت تعاون کار و رفاه اجتماعی اسناد و املاک کشور مرکز آموزش ویدیویی انجمن پرسش و پاسخ فروشگاه ملی تولید کنندگان مدیریت بر مدیران حم رسانه ملی اخبار متا دانشگاه متاورس استخدام | دانش محور فروشگاه مجازی حم تبلیغات ملی بازار NFT متاورس رنگ نقشه ملی سه بعدی متا تونل زمان متاآرت وبرنگ خانه