JavaScript Void 0 - מה עושה javascript: void (0); מתכוון?

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

מהי מילת המפתח הריקנית?

כאשר פונקציה בטלה, המשמעות היא שהפונקציה אינה מחזירה דבר. זה דומה לפונקציות ב- JavaScript שחוזרות undefinedבמפורש, כך:

function und() { return undefined } und() 

או במשתמע, כך:

function und() { } und() 

ללא קשר לביטויים ולהצהרות בפונקציות לעיל (מוסיף 2 מספרים יחד, מוצא את הממוצע של 5 מספרים, מה שלא יהיה), אין שום תוצאה שהוחזרה.

כעת אנו יודעים במה מדובר voidבמילת המפתח. מה עם javascript:void(0)?

מה זה javascript:void(0)?

אם נחלק את זה, יש לנו javascript:ו void(0). בואו נסתכל על כל חלק בפירוט רב יותר.

javascript:

זה נקרא URL פסאודו . כאשר דפדפן מקבל ערך זה כערך hrefבתג עוגן, הוא מפרש את קוד JS העוקב אחר נקודתיים (:) במקום להתייחס לערך כאל נתיב שהוזכר אליו.

לדוגמה:

Link 

כאשר לוחצים על "קישור", הנה התוצאה:

כפי שנראה לעיל, הדפדפן אינו מתייחס hrefכאל נתיב שהוזכר אליו. במקום זאת, הוא מתייחס אליו כאל קוד JavaScript שמתחיל אחרי "javascript:" ומופרד על ידי חצי נקודתיים.

void(0)

מפעיל הריק מעריך ביטויים ומחזירים שנתנו undefined.

לדוגמה:

const result = void(1 + 1); console.log(result); // undefined 

1 + 1מוערך אך undefinedמוחזר. כדי לאשר זאת, הנה דוגמה נוספת:

Heading

void(document.body.style.backgroundColor = 'red', document.body.style.color = 'white' )

התוצאה של הקוד הנ"ל היא:

הנה דוגמה נוספת:

console.log(void(0) === undefined) // true 

שילוב javascript:וvoid(0)

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

זה, המשמש void(0)באמצעים, לא לעשות כלום - לא לטעון מחדש, לא לנווט, לא להפעיל שום קוד.

לדוגמה:

Link 

המילה "קישור" מתייחסת לדפדפן כאל קישור. לדוגמא, ניתן למקד אותו, אך הוא אינו מנווט לדף חדש.

0הוא טיעון המועבר voidשאינו עושה דבר ואינו מחזיר דבר.

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

לדוגמה:

Link 

כאשר לוחצים על הכפתור, זו התוצאה:

עם void, זה אומר לדפדפן לא להחזיר שום דבר (או להחזיר undefined).

מקרה שימוש נוסף של קישורים עם javascript:void(0)ההפניה הוא שלפעמים, קישור עשוי להריץ קוד JavaScript ברקע, וניווט עשוי להיות מיותר. במקרה זה, הביטויים ישמשו כטיעונים שהועברו אליהם void.

סיכום

במאמר מפושט זה למדנו מהו voidהמפעיל, כיצד הוא עובד וכיצד משתמשים בו עם javascript:כתובת ה- Pseudo hrefלתכונות של קישורים.

זה מבטיח שדף לא ינווט לעמוד אחר או טען מחדש את הדף הנוכחי בלחיצה עליו.