4.1 setTimeout funksiyası
JavaScript-də taymerlər müəyyən əməliyyatları müəyyən edilmiş vaxt intervallarında yerinə yetirməyə imkan verir. Taymerlərlə işləmək üçün əsas iki metod setTimeout()
və setInterval()
-dir. Onlar kodun gecikmə ilə və ya müntəzəm vaxt intervalları ilə icrası üçün istifadə olunur.
setTimeout()
metodu funksiyanı müəyyən edilmiş millisekundalar içində bir dəfə yerinə yetirməyə imkan verir. Bu, kodun gecikmə ilə yerinə yetirilməsi üçün faydalıdır.
Sintaksis:
const timeoutID = setTimeout(callback, delay, ...args);
Burada:
callback
: yerinə yetiriləcək funksiyadelay
: funksiyanın yerinə yetirilməsindən əvvəlki gecikmə (millisekundlarla)args
:callback
funksiyasına ötürüləcək əlavə arqumentlər
setTimeout()
metodunun istifadə nümunəsi:
// Funksiya, 2 saniyə sonra yerinə yetiriləcək
function greet() {
console.log('Salam, dünya!');
}
// Taymerin qurulması
const timeoutID = setTimeout(greet, 2000);
4.2 setTimeout taymerini ləğv etmək
Əgər setTimeout()
vasitəsilə planlaşdırılan funksiyanın icrasını ləğv etmək lazımdırsa, clearTimeout()
metodundan istifadə etmək olar:
// Funksiya 2 saniyədən sonra icra olunacaq
function greet() {
console.log('Salam, dünya!');
}
// Taymerin qurulması
const timeoutID = setTimeout(greet, 2000);
// Taymerin ləğvi
clearTimeout(timeoutID);
Əlavə arqumentlərlə nümunə:
// Funksiya 2 saniyədən sonra arqumentlərlə icra olunacaq
function greet(name) {
console.log(`Salam, ${name}!`);
}
// Taymerin arqument ötürülməsi ilə qurulması
const timeoutID = setTimeout(greet, 2000, 'Alice');
4.3 setInterval funksiyası
setInterval()
metodu funksiyanı göstərilən vaxt intervalları ilə təkrar-təkrar icra etməyə imkan verir. Bu, periodik olaraq kodun icrası üçün faydalıdır.
Syntax:
const intervalID = setInterval(callback, delay, ...args);
Burada:
callback
: icra olunacaq funksiyadelay
: funksiyanın çağırışları arasında millisekundla intervallarargs
:callback
funksiyasına ötürüləcək əlavə parametrlər
setInterval-dan istifadə nümunəsi:
// Hər 2 saniyədə bir icra olunacaq funksiya
function greet() {
console.log('Salam, dünya!');
}
// Interval qurulması
const intervalID = setInterval(greet, 2000);
4.4 setInterval intervalını ləğv etmək
Əgər funksiyanın təkrarlanan icrasını dayandırmaq lazımdırsa, clearInterval()
metodundan istifadə edə bilərsiniz.
// Hər 2 saniyədən bir icra olunacaq funksiya
function greet() {
console.log('Salam, dünya!');
}
// Intervalı təyin edirik
const intervalID = setInterval(greet, 2000);
// 10 saniyədən sonra intervalı ləğv edirik
setTimeout(() => {
clearInterval(intervalID);
console.log('Interval ləğv edildi');
}, 10000);
Əlavə arqumentlərlə nümunə:
// Hər 2 saniyədən bir arqumentlərlə icra olunacaq funksiya
function greet(name) {
console.log(`Salam, ${name}!`);
}
// Arqument ötürərək intervalı təyin edirik
const intervalID = setInterval(greet, 2000, 'Alice');
4.5 Praktik istifadəyə nümunələr
Nümunə 1: Vaxtın avtonom yenilənməsi
<!DOCTYPE html>
<html>
<head>
<title>Auto-update Time</title>
</head>
<body>
<h1>Hazırkı Vaxt</h1>
<div id="time"></div>
<script>
function updateTime() {
const now = new Date();
const timeString = now.toLocaleTimeString();
document.getElementById('time').textContent = timeString;
}
// Vaxtın hər saniyə yenilənməsi
updateTime();
setInterval(updateTime, 1000);
</script>
</body>
</html>
Nümunə 2: Məlumatların periodik sorğulanması
// Məlumatların sorğulanmasını emulyasiya edən funksiya
function fetchData() {
console.log('Məlumatlar əldə olunur...');
// Burada serverə həqiqi sorğu göndərilə bilər
}
// Məlumatların hər 10 saniyədən bir sorğulanması
const intervalID = setInterval(fetchData, 10000);
// Sorğuların 1 dəqiqədən sonra dayandırılması
setTimeout(() => {
clearInterval(intervalID);
console.log('Məlumatların əldə olunması dayandırıldı');
}, 60000);
GO TO FULL VERSION