Introducción a Node.js [Nota 1]

Introducción a Node.js

Node.js fue lanzado en mayo de 2009 y desarrollado por Ryan Dahl. Es un entorno de ejecución de JavaScript basado en el motor Chrome V8. Utiliza un modelo de E/S sin bloqueo y controlado por eventos para permitir que JavaScript se ejecute en el servidor. plataforma de desarrollo del lado Permitió que JavaScript se convirtiera en un lenguaje de secuencias de comandos a la par con lenguajes del lado del servidor como PHP, Python, Perl y Ruby.
Node.js optimiza algunos casos de uso especiales y proporciona API alternativas para que V8 funcione mejor en entornos sin navegador. El motor V8 ejecuta Javascript muy rápidamente y tiene muy buen rendimiento. Es una plataforma construida sobre el tiempo de ejecución de JavaScript de Chrome. Se utiliza para fácilmente Cree aplicaciones de red con respuesta rápida y fácil expansión.

  • Sistema de tecnología central front-end

Insertar descripción de la imagen aquí

  • Node.js se puede utilizar como servidor [pequeño programa, aplicación, sitio web, juego]
  • El contenido de aprendizaje es el siguiente: [Más puntos de conocimiento, más difícil]

Insertar descripción de la imagen aquí

  1. estructura de la computadora
  2. Proceso de ejecución del programa
  3. proceso y hilo
  4. Sincrónico y asincrónico
  5. IP y puerto

¿Por qué aprender Node.js?

  1. Los tres marcos principales de desarrollo front-end están estrechamente relacionados con él: Vue, React y Angular.
    Insertar descripción de la imagen aquí
  2. Permitir que otros accedan a las páginas web que escribimos
  3. Sentar las bases para el aprendizaje marco posterior

¿Qué es Node.js?

Node.js es un entorno de ejecución de JavaScript de código abierto y multiplataforma. [Tomado del sitio web oficial https://nodejs.org/en/]
Node.js es un entorno de ejecución de JavaScript de código abierto y multiplataforma.
Explicación popular: Node.js es una aplicación , un software que puede ejecutar JavaScript.
Mito: Node.js es un lenguaje de programación. Node.js es la nueva versión de JavaScript.

El papel de Node.js

Insertar descripción de la imagen aquí

1. Desarrollar aplicaciones de servidor

Insertar descripción de la imagen aquíComposición del archivo de la página web: estructura de control HTML, estilo de control CSS, interacción de control de JavaScript y efectos que
nodejs ejecuta en el servidor

El servidor guarda los archivos HTML, CSS y JavaScript escritos;
el usuario envía una solicitud al servidor a través de la URL;
el servidor devuelve los recursos al navegador y el navegador analiza los recursos para mostrar las páginas del sitio web.

2. Aplicaciones de herramientas de desarrollo

Insertar descripción de la imagen aquí

3. Desarrollar aplicaciones de escritorio

Insertar descripción de la imagen aquí

  • VSCode: editor de código
  • Figma: herramienta de diseño
  • Cartero: herramienta de prueba de interfaz
  • electron: Los tres software anteriores se basan en el marco electron, que se desarrolla con la ayuda de node.js.
    Insertar descripción de la imagen aquí

Instalación de Node.js

Enlace: sitio web oficial de Node.js [https://nodejs.org/en]
Insertar descripción de la imagen aquí

  • LTS: versión de mantenimiento a largo plazo

Win+R → Ingrese cmd → enter: Abra la herramienta de símbolo del sistema [Herramienta de línea de comando]
Ingrese node -v para monitorear si node.js se instaló correctamente y ver el
Insertar descripción de la imagen aquí
diagrama de versión: [C:\Users\Zyf] es el trabajo de el directorio de la línea de comando; nodo es el nombre del comando, -v es el parámetro del comando.

Conozca las herramientas de línea de comandos

El programa se puede ejecutar en la herramienta de línea de comando.
La estructura del comando consta del nombre del comando y los parámetros del comando [los parámetros del comando pueden ser 0 o más]

¿Cómo ver el contenido de D:/Archivos de programa usando la línea de comando?

#切换工作目录到D盘命令 d:
#查看D盘内容命令 dir
#改变文件夹命令 cd 【切换工作目录】
#将工作目录切换到上一级命令 cd ..

Insertar descripción de la imagen aquí

ilustrar funcionar
Cambiar letra de unidad CD:
Cambiar directorio de trabajo cd
Ver archivos del catálogo directorio
  • dir \s para ver el contenido del directorio de trabajo actual, incluido el contenido de las subcarpetas, puede finalizar el comando con Ctrl+C
  • Ejecute el archivo js en la herramienta de línea de comandos: ejecute el comando node filename.js en el directorio de archivos actual para ejecutar el archivo js.

Consideraciones sobre Node.js

  1. Las API BOM y DOM no se pueden usar en Node.js, pero se pueden usar las API de consola y temporizador.
  2. El objeto de nivel superior en Node.js es global y también puede usar globalThis para acceder al objeto de nivel superior.

Insertar descripción de la imagen aquíSintaxis central de JS: declaración de variables, control de bucle, declaración de función de objeto, etc.

//BOM 
console.log(window);     //ReferenceError: window is not defined
console.log(history);    //ReferenceError: history is not defined
console.log(navigator);  //ReferenceError: navigator is not defined
console.log(location);   //ReferenceError: location is not defined
//DOM
console.log(document);   //ReferenceError: document is not defined
//AJAX
let xhr = new XMLHttpRequest();  //ReferenceError: XMLHttpRequest is not defined

console.log('one'); //one
setTimeout(() => {
    
    
     console.log('two');
 }, 1000); //two

//global 顶级对象
// console.log(global);
// console.log(globalThis);//ES2020
console.log(global === globalThis); //true

Introducción y creación de Buffer.

1. Concepto

Buffer es un objeto similar a una matriz, que se utiliza para representar una secuencia de bytes de longitud fija;
Buffer es esencialmente un espacio de memoria de longitud fija, que se utiliza especialmente para procesar datos binarios.
Insertar descripción de la imagen aquí

2.Características

  • El tamaño del búfer es fijo y no se puede ajustar
  • El búfer tiene un buen rendimiento y puede operar directamente en la memoria de la computadora.
  • El tamaño de cada elemento es 1 byte (byte) [1 byte= 8 bits]
    Insertar descripción de la imagen aquí

3.Uso

3.1 Crear búfer

Cómo crear un búfer en Node.js:

  1. Buffer.alloc
//创建一个长度为10字节的Buffer,相当于申请了10字节的内存空间,每个字节的值为0
let buf_1 = Buffer.alloc(10);	//Buffer是Nodejs内置模块,全局变量;alloc【分配】是方法
console.log(buf_1);				//结果为<Buffer 00 00 00 00 00 00 00 00 00 00>
  1. Buffer.allocInseguro
//创建一个长度为10字节的Buffer,buffer中可能存在旧的数据,可能会影响执行结果,所以叫Unsafe
let buf_2 = Buffer.allocUnsafe(10);	
console.log(buf_2);	
  1. Buffer.de
//通过字符串创建buffer
let buf_3 = Buffer.from('hello');//字母转换成Unicode表的数字的16进制
console.log(buf_3);				//结果为<Buffer 68 65 6c 6c 6f>
//通过数组创建buffer
let buf_4 = Buffer.from([105,108,111,118,101,121,111,117]);
console.log(buf_4);				//结果为<Buffer 69 6c 6f 76 65 79 6f 75>

Tabla Unicode compatible con tabla ASCII
Insertar descripción de la imagen aquí

3.2 Conversión de búfer y cadena

Puedes usar el método toString para convertir el Buffer en una cadena.

let buf_4 = Buffer.from([105,108,111,118,101,121,111,117]);
console.log(buf_4.toString()); //结果为iloveyou

toString se convierte según la codificación utf-8 de forma predeterminada.

3.2 Búfer de lectura y escritura

El búfer puede procesar datos directamente a través de []

//读取 []
// let buf_3 = Buffer.from('hello');
console.log(buf_3[0]);							//结果为104
console.log(buf_3[0].toString(2));				//结果为1101000,真实保存的值为01101000

//修改写入
buf_3[1] = 97;
console.log(buf_3.toString());					//结果为hallo

//溢出
buf_3[0] = 361; //255(10进制) => 1111 1111(2进制),大于255的舍弃高位的数字 0001 0110 1001(2进制) => 0110 1001(2进制) => 105(10进制) => 69(16进制)
console.log(buf_3);								//结果为<Buffer 69 61 6c 6c 6f>

//中文
let buf_5 = Buffer.from('你好');					//utf-8的一个中文字符占3个字节
console.log(buf_5);								//结果为<Buffer e4 bd a0 e5 a5 bd>

Nota:
1. Si el valor modificado excede 255, se descartarán más de 8 bits de datos
2. Un carácter UTF-8 generalmente ocupa 3 bytes.

Conceptos básicos de informática

Componentes básicos de una computadora.

Insertar descripción de la imagen aquí

  • CPU: Unidad central de procesamiento, el centro de operación y control de la computadora;
  • Memoria: un medio para almacenar datos, con velocidades rápidas de lectura y escritura, y los datos se perderán cuando se apague la energía;
  • Disco duro: medio para almacenar datos, la velocidad de lectura y escritura es lenta y los datos no se perderán cuando se apague la alimentación;
  • tarjeta madre
  • Tarjeta gráfica, tarjeta de sonido: procesamiento de señales.
  • disipador de calor
  • Periféricos: ratón, teclado, audio, etc.

Flujo básico de operación del programa.

Sistema operativo: Windows, Linux, MacOS, es una aplicación utilizada para administrar y programar recursos de hardware. (El sistema operativo debe estar instalado en el disco duro de la computadora)
Insertar descripción de la imagen aquí
El proceso básico de inicio de la computadora:
Insertar descripción de la imagen aquíEl proceso básico de inicio del programa:
Insertar descripción de la imagen aquí

Los programas generalmente se guardan en el disco duro y el proceso de instalación del software es el proceso de escribir el programa en el disco duro.
Cuando el programa se está ejecutando, se carga en la memoria y luego la CPU lee y ejecuta el programa.

Procesos e hilos

Proceso: [Programa en progreso], un proceso es un proceso de ejecución de un programa.
Los sistemas Windows pueden ver procesos a través del administrador de tareas.

Hilo: un hilo es un flujo de ejecución ejecutado en un proceso. Un hilo pertenece a un proceso.
Un proceso puede tener uno o más subprocesos.
Vea todos los subprocesos de un determinado proceso: pslist -dmx número pid [el número pid es el ID del proceso]
Nota: Ingrese pslist. Si el comando no se reconoce, significa que pslist no está instalado en la computadora actual. Las herramientas se pueden descargar desde el sitio web oficial de Windows: https://technet.microsoft.com/en-us/sysinternals/bb896682.aspx. Una vez completada la descarga, descomprímala en C:\Windows\System32. ruta de uso, o también se puede configurar en variables de entorno.

Insertar descripción de la imagen aquíInsertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_41361442/article/details/130937120
Recomendado
Clasificación