logo

שינה/המתנה של JavaScript

לשפות התכנות כגון PHP ו-C יש א שינה (שנייה) פונקציה להשהות את הביצוע למשך פרק זמן קבוע. לג'אווה יש א thread.sleep() , לפיתון יש זמן שינה() , ול-GO יש time.sleep(2*time.second) .

יצירת ג'אווה

בניגוד לשפות אחרות, ל-JavaScript אין שפות לִישׁוֹן() פוּנקצִיָה. אנו יכולים להשתמש בכמה גישות להדמיית לִישׁוֹן() פונקציה ב-JavaScript. התכונות כגון הבטחות ו אסינכרן/ממתין הפונקציה ב-JavaScript עזרה לנו להשתמש ב- לִישׁוֹן() לתפקד בצורה קלה יותר.

ה לְהַמתִין משמש להמתנה להבטחה וניתן להשתמש בו רק ב- אסינכרון פוּנקצִיָה. ההתנהגות של JavaScript היא אסינכרונית, ולכן יש מושג של הבטחות לטפל בהתנהגות אסינכרונית כזו. בגלל התנהגות אסינכרונית זו, הוא ממשיך בעבודתו ואינו ממתין לשום דבר במהלך הביצוע. אסינכרון/ממתין פונקציות עוזרות לנו לכתוב את הקוד בצורה סינכרונית.

כיצד להשתמש בפונקציית שינה ב-JavaScript?

לפני יישום השינה פונקציה ב-JavaScript , חשוב להבין את הביצוע של ה JavaScript קוד.

תחביר של sleep() ב-JavaScript

 sleep(delayTime in milliseconds).then(() => { // code to be executed }) 

ניתן להשתמש בפונקציה sleep() יחד עם ה-async/await כדי לקבל את ההשהיה בין הביצוע. התחביר עבור אותו ניתן באופן הבא:

תחביר

 const func = async () => { await sleep(delayTime in milliseconds) //code to be executed } fun() 

התחבירים לעיל הם הדרך ליישם פונקציונליות שינה ב-JavaScript. כעת, נראה את הדוגמאות לשימוש בפונקציית sleep() ב-JavaScript.

דוגמה1

בדוגמה זו, אנו משתמשים ב- לִישׁוֹן() לתפקד עם ה אסינכרן/ממתין פונקציונליות. יש פונקציה כֵּיף() מוגדר עם כמה הצהרות. בתחילה, הטקסט 'שלום עולם' מוצג על המסך לאחר הפעלת הפונקציה. לאחר מכן, בגלל פונקציית השינה כֵּיף() מושהה למשך 2 שניות. לאחר השלמת פרק הזמן הנתון, הטקסט 'ברוכים הבאים ל-javaTpoint.com' יוצג על המסך ויחזור על עצמו עד לסיום הלולאה. הטקסט יחזור על עצמו 10 פעמים על המסך עם הפסקה של שתי שניות בכל איטרציה של הלולאה.

 <p> There is a sleep of 2000 milliseconds </p> let sleep = ms =&gt; { return new Promise(resolve =&gt; setTimeout(resolve, ms)); }; document.write(&apos;Begin&apos; + &apos; <br>&apos;); document.write(&apos;Welcome to the javaTpoint.com&apos; + &apos; <br>&apos;); sleep(2000).then(() =&gt; { document.write(&apos;End&apos;); }); 
בדוק את זה עכשיו

תְפוּקָה

לאחר ביצוע הקוד לעיל, הפלט יהיה -

שינה/המתנה של JavaScript

לאחר השהיה של 2 שניות, הפלט יהיה -

שינה/המתנה של JavaScript