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.