Nodejs Capítulo 10 (Variables globales)

¿Cómo definir variables globales en nodejs?

Use global para definir variables globales en nodejs. También se puede acceder a las variables definidas en los archivos importados. Por ejemplo, a.js global.xxx = 'xxx' require('xxx.js')xxx.js también puede acceder a las variables. En el navegador, las variables globales que definimos están todas en la ventana, nodejs es global , se deben evaluar diferentes entornos, por lo que apareció una globalThisvariable global en ECMAScript 2020, que cambiará automáticamente a global en el entorno nodejs, y es muy conveniente que el entorno del navegador cambie automáticamente de ventana

Acerca de otras API globales

Dado que no hay DOM ni BOM en nodejs, a excepción de estas API, básicamente se pueden usar otras API de ECMAscript

Por ejemplo

setTimeout setInterval Promise Math  console  Date fetch(node v18) 等...

Estas API se pueden usar normalmente

API global integrada de nodejs

__dirname

目录Representa la ruta absoluta del módulo actual.

__filename

Representa 文件la ruta absoluta del módulo actual, incluidos el nombre y la extensión del archivo.

require module

La importación de módulos y la exportación de módulos se han discutido en detalle en el capítulo anterior.

process
  1. process.argv: Esta es una matriz que contiene argumentos de línea de comando. El primer elemento es la ruta de ejecución de Node.js, el segundo elemento es la ruta del archivo JavaScript que se está ejecutando actualmente y los siguientes elementos son los parámetros de la línea de comandos pasados ​​al script.
  2. process.env: Este es un objeto que contiene las variables de entorno actuales. Puede process.envacceder y manipular las variables de entorno mediante.
  3. process.cwd(): este método devuelve la ruta del directorio de trabajo actual.
  4. process.on(event, listener): Se utiliza para registrar detectores de eventos. Puede process.onescuchar eventos como exity uncaughtExceptionejecutar la función de devolución de llamada correspondiente cuando ocurra el evento.
  5. process.exit([code]): se usa para salir del proceso actual de Node.js. Puede proporcionar un código de salida opcional como argumento.
  6. process.pid: Esta propiedad devuelve el PID (ID de proceso) del proceso actual.

Estas son solo processalgunas de las propiedades y métodos de objetos comúnmente utilizados, hay muchos otros que se pueden usar para monitorear procesos, configurar el manejo de señales, enviar mensajes IPC, etc.

需要注意的是,process对象是一个全局对象,可以在任何模块中直接访问,无需导入或定义。

Buffer
  1. 创建 Buffer 实例:

    • Buffer.alloc(size[, fill[, encoding]]): 创建一个指定大小的新的Buffer实例,初始内容为零。fill参数可用于填充缓冲区,encoding参数指定填充的字符编码。
    • Buffer.from(array): 创建一个包含给定数组的Buffer实例。
    • Buffer.from(string[, encoding]): 创建一个包含给定字符串的Buffer实例。
  2. 读取和写入数据:

    • buffer[index]: 通过索引读取或写入Buffer实例中的特定字节。
    • buffer.length: 获取Buffer实例的字节长度。
    • buffer.toString([encoding[, start[, end]]]): 将Buffer实例转换为字符串。
  3. 转换数据:

    • buffer.toJSON(): 将Buffer实例转换为JSON对象。
    • buffer.slice([start[, end]]): 返回一个新的Buffer实例,其中包含原始Buffer实例的部分内容。
  4. 其他方法:

    • Buffer.isBuffer(obj): 检查一个对象是否是Buffer实例。
    • Buffer.concat(list[, totalLength]): 将一组Buffer实例或字节数组连接起来形成一个新的Buffer实例。

请注意,从Node.js 6.0版本开始,Buffer构造函数的使用已被弃用,推荐使用Buffer.alloc()Buffer.from()等方法来创建Buffer实例。

Buffer类在处理文件、网络通信、加密和解密等操作中非常有用,尤其是在需要处理二进制数据时

Supongo que te gusta

Origin juejin.im/post/7266009957576884239
Recomendado
Clasificación