Node.js - Global Nesneler
Node.js global nesneleri doğası gereği globaldir ve tüm modüllerde mevcuttur. Bu nesneleri uygulamamıza dahil etmemize gerek yoktur, bunun yerine onları doğrudan kullanabiliriz. Bu nesneler modüller, işlevler, dizeler ve aşağıda açıklandığı gibi nesnenin kendisidir.
__dosya adı
__filenameçalıştırılan kodun dosya adını temsil eder. Bu, bu kod dosyasının çözümlenmiş mutlak yoludur. Bir ana program için bu, komut satırında kullanılanla aynı dosya adı olmayabilir. Bir modül içindeki değer, o modül dosyasına giden yoldur.
Misal
Aşağıdaki kodla main.js adlı bir js dosyası oluşturun -
// Let's try to print the value of __filename
console.log( __filename );
Şimdi sonucu görmek için main.js'yi çalıştırın -
$ node main.js
Programınızın konumuna bağlı olarak, ana dosya adını aşağıdaki gibi yazdıracaktır -
/web/com/1427091028_21099/main.js
__dirname
__dirname o anda çalışan komut dosyasının bulunduğu dizinin adını temsil eder.
Misal
Aşağıdaki kodla main.js adlı bir js dosyası oluşturun -
// Let's try to print the value of __dirname
console.log( __dirname );
Şimdi sonucu görmek için main.js'yi çalıştırın -
$ node main.js
Programınızın konumuna bağlı olarak, mevcut dizin adını aşağıdaki gibi yazdıracaktır -
/web/com/1427091028_21099
setTimeout (cb, ms)
setTimeout(cb, ms)global işlev, en az ms milisaniyeden sonra geri arama cb'yi çalıştırmak için kullanılır. Gerçek gecikme, işletim sistemi zamanlayıcı ayrıntı düzeyi ve sistem yükü gibi harici faktörlere bağlıdır. Bir zamanlayıcı 24,8 günden fazla olamaz.
Bu fonksiyon, zamanlayıcıyı temizlemek için kullanılabilecek zamanlayıcıyı temsil eden opak bir değer döndürür.
Misal
Aşağıdaki kodla main.js adlı bir js dosyası oluşturun -
function printHello() {
console.log( "Hello, World!");
}
// Now call above function after 2 seconds
setTimeout(printHello, 2000);
Şimdi sonucu görmek için main.js'yi çalıştırın -
$ node main.js
Çıktının biraz gecikmeden sonra yazdırıldığını doğrulayın.
Hello, World!
clearTimeout (t)
clearTimeout(t)global işlev, önceden setTimeout () ile oluşturulmuş bir zamanlayıcıyı durdurmak için kullanılır. Burayat setTimeout () işlevi tarafından döndürülen zamanlayıcıdır.
Misal
Aşağıdaki kodla main.js adlı bir js dosyası oluşturun -
function printHello() {
console.log( "Hello, World!");
}
// Now call above function after 2 seconds
var t = setTimeout(printHello, 2000);
// Now clear the timer
clearTimeout(t);
Şimdi sonucu görmek için main.js'yi çalıştırın -
$ node main.js
Yazdırılmış hiçbir şey bulamayacağınız çıktıyı doğrulayın.
setInterval (cb, ms)
setInterval(cb, ms)global işlev, en az ms milisaniyeden sonra cb'yi tekrar tekrar çalıştırmak için kullanılır. Gerçek gecikme, işletim sistemi zamanlayıcı ayrıntı düzeyi ve sistem yükü gibi harici faktörlere bağlıdır. Bir zamanlayıcı 24,8 günden fazla olamaz.
Bu işlev, işlevi kullanarak zamanlayıcıyı temizlemek için kullanılabilen zamanlayıcıyı temsil eden opak bir değer döndürür. clearInterval(t).
Misal
Aşağıdaki kodla main.js adlı bir js dosyası oluşturun -
function printHello() {
console.log( "Hello, World!");
}
// Now call above function after 2 seconds
setInterval(printHello, 2000);
Şimdi sonucu görmek için main.js'yi çalıştırın -
$ node main.js
Yukarıdaki program, her 2 saniyede bir printHello () çalıştıracaktır. Sistem sınırlaması nedeniyle.
Global Nesneler
Aşağıdaki tablo, uygulamalarımızda sıklıkla kullandığımız diğer nesnelerin bir listesini sunmaktadır. Daha fazla ayrıntı için resmi belgelere bakabilirsiniz.
Sr.No. | Modül Adı ve Açıklaması |
---|---|
1 | Console Stdout ve stderr hakkında bilgi yazdırmak için kullanılır. |
2 | Process Mevcut süreç hakkında bilgi almak için kullanılır. Proses etkinlikleriyle ilgili birden çok olay sağlar. |