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