Node.js es un marco de JavaScript basado en un proyecto de código abierto que se utiliza para secuencias de comandos del lado del servidor. Los objetos globales de Node.js son aquellos objetos que están presentes en todos los módulos. Los objetos globales se pueden usar directamente en la aplicación que está disponible sin importar ningún módulo. Se han agregado objetos globales teniendo en cuenta que estos son algunos requisitos básicos y uno puede requerirlos en cualquier momento, por lo que es mejor mantenerlos globales en lugar de agregar módulos específicos para estos objetos. Los objetos globales se crean mientras se construye un marco en primer lugar y luego se pueden actualizar según los requisitos. Los objetos globales son responsables de la funcionalidad básica del marco sin importar ningún módulo ni crear ninguna función para cumplir con algunos de los requisitos principales.
Algunos de los objetos globales de Node.js se enumeran a continuación:
-
Clase de búfer : la clase de búfer es una clase accesible globalmente. La clase Buffer se utiliza principalmente con el fin de tratar con datos binarios. Los objetos de la clase Buffer se utilizan a menudo para representar los datos binarios en forma de secuencia de bytes.
-
consola: se utiliza para imprimir en stdout y stderr y es un objeto global al que se puede acceder sin importar ningún módulo.
-
proceso: Es una instancia de EventEmitter que se utiliza para recibir información sobre el proceso actual. Es un objeto global incorporado al que también se puede acceder usando require() explícitamente.
-
global: es un espacio de nombres y definir una variable dentro de este espacio de nombres la convierte en una variable global.
var myvar;
-
Método setImmediate(): Las funciones para las devoluciones de llamada se alinean y se ejecutan según el orden de su creación. La cola de devolución de llamada procesa las devoluciones de llamada en cada iteración del bucle de eventos. Inmediatamente ejecuta las devoluciones de llamadas programadas. Si la devolución de llamada en ejecución está vinculada por un temporizador, el temporizador no se activará hasta la creación de instancias de la iteración del siguiente bucle.
JavaScript
<script>
function
myFunction(website){
console.log(
"Hi, Welcome to "
+ website);
}
console.log(
"Before the setImmediate call"
)
let setID = setImmediate(myFunction,
"GFG"
);
console.log(
"After the setImmediate call"
)
for
(let i=0; i<5; i++){
console.log(
"Iteration of loop: "
+i);
}
</script>
Producción:
-
Método clearImmediate(): Realiza la operación de borrado en el objeto devuelto por el método setImmediate() al detener el objeto, es decir, el objeto no se ejecutará.
JavaScript
<script>
function
myFunction(website){
console.log(
"Hi, Welcome to "
+ website);
}
console.log(
"Before the setImmediate call"
)
let setID = setImmediate(myFunction,
"GFG"
);
console.log(
"After the setImmediate call"
)
for
(let i=0; i<5; i++){
console.log(
"Iteration of loop: "
+i);
}
clearImmediate(setID);
</script>
Producción:
-
método setInterval(): si el intervalo supera el límite del tipo de datos int, es decir, 2147483647 o no es un número entero positivo, el valor del intervalo se establece en 1. También trunca los retrasos no enteros al número entero más cercano y realiza la función de devolución de llamada en intervalos repetidos.
JavaScript
<script>
function
myFunction(website){
console.log(
"Hi, Welcome to "
+ website);
}
console.log(
"Before the setInterval call"
)
let setID = setInterval(myFunction, 3000,
"GFG"
);
console.log(
"After the setInterval call"
)
</script>
Producción:
-
Método clearInterval(): Realiza la operación de borrado en el objeto devuelto por el método setInterval() cancelando el objeto, es decir, no permite que setInterval se ejecute ni una sola vez.
JavaScript
<script>
function
myFunction(website){
console.log(
"Hi, Welcome to "
+ website);
}
console.log(
"Before the setInterval call"
)
let setID = setInterval(myFunction, 3000,
"GFG"
);
console.log(
"After the setInterval call"
)
clearInterval(setID);
</script>
Producción:
-
Método setTimeout(): si el retraso supera el límite del tipo de datos int, es decir, 2147483647 o no es un número entero positivo, el valor de retraso se establece en 1. También trunca los retrasos no enteros al entero más cercano y realiza la función de devolución de llamada en intervalos repetidos, pero no garantiza los tiempos exactos de las devoluciones de llamada.
JavaScript
<script>
function
greet(msg, name) {
console.log(msg + name);
}
setTimeout(greet, 1000,
"Hi "
,
"Geek"
);
</script>
Producción:
Hi Geek
-
Método clearTimeout(): El método clearTimeout() se usa para cancelar el timeoutObj devuelto por el método setTimeout() para que no se pueda ejecutar setTimeout.
JavaScript
<script>
console.log(
"setTimeout msg will not be printed"
)
function
greet(msg, name) {
console.log(msg + name);
}
let setID = setTimeout(greet, 1000,
"Hi "
,
"Geeks"
);
clearTimeout(setID);
</script>
Producción:
setTimeout msg will not be printed
-
método queueMicrotask(): se ejecuta después de que finaliza la función de devolución de llamada y si la pila de ejecución de JavaScript está vacía. Este método no devuelve el control al JavaScript y una cola de microtareas se puede procesar varias veces del bucle porque el bucle de eventos sigue llamando a las microtareas en la cola.
-
URLSearchParams: Esta es una API que realiza las operaciones de lectura y escritura en cualquier URL.
Sintaxis:
const myURL = new URL('https://www.register.com/?name=nodejs'); //It prints nodejs console.log(myURL.searchParams.get('name')); myURL.searchParams.append('name', 'xyz'); // It prints https://www.register.com/?name=nodejs&name=xyz console.log(myURL.href);
-
WebAssembly: este es un lenguaje ensamblador de bajo nivel compatible con los navegadores modernos, por lo que podemos usarlo para organizar los objetos en los navegadores.
Las siguientes variables existen solo dentro del alcance de algunos módulos que pueden parecer globales.
- Método require(id): puede devolver un objeto de tipo de datos no específico y se usa para importar módulos al script.
var express = require('express')
- exportaciones: Se puede utilizar para exportar los módulos presentes en el script a cualquier otro script.
- módulo: Se usa para incluir un módulo en particular usando el método require() y esto no es local sino local para cada módulo.
- __dirname: __dirname no es un objeto global y esto se puede probar ejecutando el siguiente comando sin agregar ningún script, ya que esto generará un error. Se verifica que __dirname no es un objeto global.
Create a test.js file Write the following condole.log statement: console.log("__dirname : "+ __dirname); Run the test.js file
- __filename: __filename no es un objeto global y esto se puede probar ejecutando el siguiente comando sin agregar ningún script, ya que esto generará un error. Se verifica que __filename no es un objeto global.
Create a test.js file Write the following condole.log statement: console.log("__filename : "+ __filename); Run the test.js file