מיון
שיעור 14 מתוך 18 בקורס מתודות למערכים ב-JavaScript של Coddy.
המתודה sort() היא פונקציה מובנית למערכים שעוזרת לך לארגן את הרכיבים בסדר מסוים. כברירת מחדל, היא ממיינת מחרוזות בסדר אלפביתי ומספרים בסדר מספרי. עם זאת, ניתן גם להתאים אישית את אופן המיון באמצעות פונקציית callback כדי להגדיר קריטריונים משלך למיון.
מיון ברירת מחדל: נניח שיש לך רשימה של כותרות סרטים (מחרוזות) ואתה רוצה למיין אותן בסדר אלפביתי (מיון ברירת המחדל):
const movieTitles = ["The Shawshank Redemption", "The Godfather", "The Dark Knight", "Pulp Fiction"];
movieTitles.sort(); // ממיין במקום
console.log(movieTitles); // פלט: ["The Dark Knight", "The Godfather", "Pulp Fiction", "The Shawshank Redemption"]- בדוגמה שלמעלה, אנחנו קוראים ל־
sort()עלmovieTitles. - כברירת מחדל, היא ממיינת את הרכיבים בסדר אלפביתי לפי קודי התווים של Unicode.
console.log()מציגה את מערךmovieTitles, שכעת ממוין בסדר אלפביתי.
מיון מותאם אישית של מספרים: נניח שיש לך מערך של דירוגי מוצרים (מספרים) ואתה רוצה למיין אותם מהגבוה לנמוך:
const ratings = [4.5, 3.8, 5.0, 4.2];
ratings.sort((a, b) => b - a); // פונקציית השוואה מותאמת אישית למיון בסדר יורד
console.log(ratings); // פלט: [5.0, 4.5, 4.2, 3.8]- בדוגמה שלמעלה, אנחנו קוראים ל־
sort()עלratings. - אנחנו מספקים פונקציית השוואה מותאמת אישית (
(a, b) => b - a) שמחסירה את הרכיב השני (b) מהרכיב הראשון (a). - אם התוצאה חיובית (b גדול מ־a), הרכיבים מוחלפים (סדר יורד).
אתגר
קלאתם בשוק, יש לכם רשימה של מחירים (מספרים) לפריטים שונים שאתם רוצים לקנות, והמחירים האלה מופיעים במערך marketPrices.
המשימה שלכם היא לכתוב קוד JavaScript שימיין את המחירים מהנמוך ביותר לגבוה ביותר וידפיס את המערך המעודכן ביומן.
נסו בעצמכם
const marketPrices = [10, 5, 20, 12, 8];
// כתבו כאן קודכל השיעורים ביחידה מתודות למערכים ב-JavaScript
תרגלו בעצמכם: קומפיילר JavaScript אונליין