++ i ו- i ++ מפעילי תוספות וירידות

אז למה בדיוק כן JavaScript (ושפות אחרות) מספקות כל כך הרבה דרכים שונות לעשות את אותו הדבר? ובכן, ראשית, חלק מהחלופות הללו קצרות יותר מאחרות ולכן כרוכות בפחות הקלדה. השימוש ב- + = מאפשר בקלות לכל מספר ולא רק להוסיף אותו למשתנה מבלי שתצטרך להזין את שם המשתנה פעמיים.

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

הצהרה זו מעדכנת את הערכים של שני המשתנים i ו- j בהצהרה האחת. העניין הוא שבעוד ש- ++ i ו- i ++ עושים את אותו הדבר בכל הנוגע לעדכון אני עושה דברים שונים ביחס לעדכון משתנים אחרים. ניתן לכתוב את האמירה לעיל כשתי הצהרות נפרדות כמו זו:

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

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

instagram viewer

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

instagram story viewer