מציג תוצאות 1 עד 2 מתוך 2

אשכול: מיון מערכים בשפת Javascript

  1. #1
    DarkLake DarkLake מנותק תואר כבוד
    תאריך הצטרפות
    21/02/08
    שם פרטי
    בן
    הודעות
    7,707
    קיבל לייק
    568 פעמים

    מיון מערכים בשפת Javascript

    המתודה sort מאפשרת למיין מערכים מיון אלפא נומרי. כלומר, מתודה זו בצורתה הגולמית תתייחס לכל ערך במערך כאל מחרוזת, גם אם מדובר למשל במספר.

    דוגמה לשימוש במתודה sort לצורך מיון אלפאנומרי

    var a=["World", "Israel", "Devschool", "Hello"]
    a.sort() //The outcome is: ["Devschool", "Hello", "Israel", "World"]

    בדוגמה למעלה ראינו כיצד המערך מתמיין וסדר המיון הוא מן האותיות הראשונות אל האחרונות.אם נרצה להפוך סדר זה כך שהמיון יהיה מן האותיות האחרונות אל הראשונות, נוכל לעשות זאת באמצעות שימוש במתודה reverse.

    דוגמה לשימוש במתודה reverse כדי להפוך את סדר המיון של מערך

    var a=["World", "Israel", "Devschool", "Hello"]
    a.sort() //The outcome is: ["Devschool", "Hello", "Israel", "World"]
    a.reverse //The outcome now is: ["World", "Israel", "Hello", "Devschool"]

    המתודה sort מאפשרת להעביר לה פונקצית מיון כארגומנט. פונקציה זו מקבלת שני ארגומנטים ומחזירה ערך מספרי כתשובה. הארגומנטים שמועברים לפונקציה הם ערכים שימשו את הפונקציה לצורך החלטה איזה מן המספרים ימויין במקום הראשון ואיזה במקום השני. אם הערך המוחזר הוא שלילי אזי הארגומנט הראשון שהועבר לפונקצית המיון יהיה ראשון. אם הערך המוחזר מהפונקציה הוא חיובי אזי הארגומנט השני שהועבר לפונקציה ימוקם לפני הארגומנט השני. אם הערך המוחזר שווה ל - 0 אזי אין חשיבות לסדר המיון של שני הארגומנטים, כלומר הם שווים זה לזה מבחינת המיון המבוקש.בדוגמה הבאה ננצל את התכונה המאפשרת לנו להעביר פונקצית מיון כארגומנט למתודה sort כדי למיין מערך בעל ערכים מספריים.

    מיון ערכים מספריים במערך בעזרת המתודה sort

    var a=[23, 9, 6, 41];
    a.sort(function(a,b){return a - b});
    //The array now is [6, 9, 23, 41]

    בדוגמה למעלה החסרנו את הארגומנט הראשון מן השני. אם הארגומנט הראשון גדול יותר מן השני אזי יוחזר ערך חיובי ולכן הארגומנט השני ימוקם לפני הארגומנט הראשון. אם הארגומנט הראשון קטן מן הארגומנט השני אזי הערך שיוחזר מחיסור שני הארגומנטים הוא שלילי ולכן המספר הראשון ימוקם לפני המספר השני. אם הערך שיוחזר הוא אפס משמעות הדבר ששני הארגומנטים שווים זה לזה ולכן אין חשיבות לסדר המיון.
    כמובן שהפונקציה שכתבנו בדוגמה האחרונה תמיין את המספרים המועברים אליה בסדר עולה, כלומר מן הקטן אל הגדול. אם נרצה להפוך את סדר המיון נוכל להשתמש במתודה reverse כפי שהדגמנו בסעיף הקודם אולם נוכל לעשות זאת גם בעזרת שינוי הפונקציה הממיינת באופן הבא.

    מיון ערכים מספריים במערך בסדר יורד

    var a=[23, 9, 6, 41];
    a.sort(function(a,b){return b - a});
    //The array now is [41, 23, 9, 6]



  2. #2
    yanosh yanosh מנותק טירון
    תאריך הצטרפות
    11/08/12
    שם פרטי
    yanosh
    הודעות
    29
    קיבל לייק
    0 פעמים
    תודה!!!

נושאים דומים

  1. פונקציות בשפת - Javascript
    על ידי DarkLake בפורום HTML ושפות צד לקוח
    תגובות: 0
    הודעה אחרונה: 11/04/12, 21:23
  2. קצין מיון מלשין
    על ידי DareDevil בפורום צבא וביטחון
    תגובות: 22
    הודעה אחרונה: 22/11/08, 18:18
  3. קיבלתי מיון לחובלים בצוללת
    על ידי DareDevil בפורום צבא וביטחון
    תגובות: 8
    הודעה אחרונה: 09/05/07, 19:43
eXTReMe Tracker