Javascript setTimeout ()

Πίνακας περιεχομένων

Σε αυτό το σεμινάριο, θα μάθετε για τη μέθοδο JavaScript setTimeout () με τη βοήθεια παραδειγμάτων.

Η setTimeout()μέθοδος εκτελεί ένα μπλοκ κώδικα μετά τον καθορισμένο χρόνο. Η μέθοδος εκτελεί τον κώδικα μόνο μία φορά.

Η συνήθως χρησιμοποιούμενη σύνταξη του JavaScript setTimeout είναι:

 setTimeout(function, milliseconds);

Οι παράμετροι του είναι:

  • function - μια συνάρτηση που περιέχει ένα μπλοκ κώδικα
  • χιλιοστά του δευτερολέπτου - ο χρόνος μετά τον οποίο εκτελείται η συνάρτηση

Η setTimeout()μέθοδος επιστρέφει ένα intervalID , το οποίο είναι θετικός ακέραιος.

Παράδειγμα 1: Εμφάνιση κειμένου μία φορά μετά από 3 δευτερόλεπτα

 // program to display a text using setTimeout method function greet() ( console.log('Hello world'); ) setTimeout(greet, 3000); console.log('This message is shown first');

Παραγωγή

Αυτό το μήνυμα εμφανίζεται πρώτο  Γεια σας κόσμο

Στο παραπάνω πρόγραμμα, η setTimeout()μέθοδος καλεί τη greet()συνάρτηση μετά από 3000 χιλιοστά του δευτερολέπτου ( 3 δευτερόλεπτα).

Ως εκ τούτου, το πρόγραμμα εμφανίζει το κείμενο Hello world μόνο μία φορά μετά από 3 δευτερόλεπτα.

Σημείωση : Η setTimeout()μέθοδος είναι χρήσιμη όταν θέλετε να εκτελέσετε ένα μπλοκ μιας μετά από λίγο. Για παράδειγμα, εμφάνιση ενός μηνύματος σε έναν χρήστη μετά τον καθορισμένο χρόνο.

Η setTimeout()μέθοδος επιστρέφει το αναγνωριστικό διαστήματος. Για παράδειγμα,

 // program to display a text using setTimeout method function greet() ( console.log('Hello world'); ) let intervalId = setTimeout(greet, 3000); console.log('Id: ' + intervalId); 

Παραγωγή

 Αναγνωριστικό: 3 Γεια σου κόσμο

Παράδειγμα 2: Χρόνος εμφάνισης κάθε 3 δευτερόλεπτα

 // program to display time every 3 seconds function showTime() ( // return new date and time let dateTime= new Date(); // returns the current local time let time = dateTime.toLocaleTimeString(); console.log(time) // display the time after 3 seconds setTimeout(showTime, 3000); ) // calling the function showTime();

Παραγωγή

 5:45:39 ΜΜ 5:45:43 ΜΜ 5:45:47 ΜΜ 5:45:50 ΜΜ… 

Το παραπάνω πρόγραμμα εμφανίζει την ώρα κάθε 3 δευτερόλεπτα.

Η setTimeout()μέθοδος καλεί τη λειτουργία μόνο μία φορά μετά το χρονικό διάστημα (εδώ 3 δευτερόλεπτα).

Ωστόσο, στο παραπάνω πρόγραμμα, καθώς η λειτουργία καλείται, το πρόγραμμα εμφανίζει την ώρα κάθε 3 δευτερόλεπτα.

Αυτό το πρόγραμμα εκτελείται επ 'αόριστον (έως ότου εξαντληθεί η μνήμη).

Σημείωση : Εάν πρέπει να εκτελέσετε μια συνάρτηση πολλές φορές, είναι καλύτερα να χρησιμοποιήσετε τη setInterval()μέθοδο.

Εκκαθάριση JavaScript Timeout ()

Όπως έχετε δει στο παραπάνω παράδειγμα, το πρόγραμμα εκτελεί ένα μπλοκ κώδικα μετά το καθορισμένο χρονικό διάστημα. Εάν θέλετε να διακόψετε αυτήν την κλήση λειτουργίας, μπορείτε να χρησιμοποιήσετε τη clearTimeout()μέθοδο.

Η σύνταξη της clearTimeout()μεθόδου είναι:

 clearTimeout(intervalID);

Εδώ, intervalIDείναι η τιμή επιστροφής της setTimeout()μεθόδου.

Παράδειγμα 3: Χρησιμοποιήστε τη μέθοδο clearTimeout ()

 // program to stop the setTimeout() method let count = 0; // function creation function increaseCount()( // increasing the count by 1 count += 1; console.log(count) ) let id = setTimeout(increaseCount, 3000); // clearTimeout clearTimeout(id); console.log('setTimeout is stopped.');

Παραγωγή

 Το setTimeout έχει σταματήσει.

Στο παραπάνω πρόγραμμα, η setTimeout()μέθοδος χρησιμοποιείται για την αύξηση της τιμής μέτρησης μετά από 3 δευτερόλεπτα. Ωστόσο, η clearTimeout()μέθοδος διακόπτει την κλήση λειτουργίας της setTimeout()μεθόδου. Ως εκ τούτου, η τιμή μέτρησης δεν αυξάνεται.

Σημείωση : Γενικά χρησιμοποιείτε τη clearTimeout()μέθοδο όταν πρέπει να ακυρώσετε την setTimeout()κλήση μεθόδου προτού συμβεί.

Μπορείτε επίσης να μεταβιβάσετε πρόσθετα ορίσματα στη setTimeout()μέθοδο. Η σύνταξη είναι:

 setTimeout(function, milliseconds, parameter1,… .paramenterN);

Όταν περάσουν επιπλέον παραμέτρους στο setTimeout()μέθοδο, αυτές οι παράμετροι ( parameter1, parameter2, κ.λπ.) θα περάσει στην καθορισμένη λειτουργία .

Για παράδειγμα,

 // program to display a name function greet(name, lastName) ( console.log('Hello' + ' ' + name + ' ' + lastName); ) // passing argument to setTimeout setTimeout(greet, 1000, 'John', 'Doe');

Παραγωγή

 Γεια σας John Doe

Στο παραπάνω πρόγραμμα, δύο παράμετροι Johnκαι Doeμεταβιβάζονται στη setTimeout()μέθοδο. Αυτές οι δύο παράμετροι είναι τα ορίσματα που θα μεταβιβαστούν στη συνάρτηση (εδώ, greet()συνάρτηση) που ορίζεται μέσα στη setTimeout()μέθοδο.

Προτεινόμενη ανάγνωση: JavaScript async () και περιμένετε ()

ενδιαφέροντα άρθρα...