Menu
Coddy logo textTech

מיון

שיעור 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), הרכיבים מוחלפים (סדר יורד).
     
challenge icon

אתגר

קל

אתם בשוק, יש לכם רשימה של מחירים (מספרים) לפריטים שונים שאתם רוצים לקנות, והמחירים האלה מופיעים במערך marketPrices.

המשימה שלכם היא לכתוב קוד JavaScript שימיין את המחירים מהנמוך ביותר לגבוה ביותר וידפיס את המערך המעודכן ביומן.

נסו בעצמכם

const marketPrices = [10, 5, 20, 12, 8];

// כתבו כאן קוד

כל השיעורים ביחידה מתודות למערכים ב-JavaScript

תרגלו בעצמכם: קומפיילר JavaScript אונליין