Visión general de Node.JS v.12
Despliega las aplicaciones más populares en nuestros servidores cloud de alto rendimiento con un solo clic.
Node.js es una plataforma de software basada en el motor V8 (que traduce JavaScript a código máquina), que transforma JavaScript de un lenguaje muy especializado en un lenguaje de propósito general. Node.js añade a JavaScript la capacidad de interactuar con dispositivos de entrada/salida a través de su API (escrita en C++), de conectar bibliotecas externas escritas en distintos lenguajes y de invocarlas desde código JavaScript. Node.js se utiliza principalmente en el servidor como servidor web, aunque también permite desarrollar aplicaciones de escritorio con ventanas (mediante NW.js, AppJS o Electron para Linux, Windows y Mac OS).

Mejoras en Node.js 12:
- Actualización del motor V8 a la versión 7.4 con soporte para trazas de pila asíncronas, mayor rendimiento de await, del parsing de JavaScript y de las llamadas cuando el número real y el declarado de argumentos no coinciden;
- Compatibilidad con TLS 1.3 en el módulo tls y desactivación por defecto de TLS 1.0/1.1;
- Refuerzo de la protección y de las comprobaciones del tamaño de memoria asignada en la clase Buffer;
- Refuerzo de las comprobaciones de argumentos en los módulos child_process, fs y assert;
- Eliminación de los manejadores obsoletos en el módulo crypto;
- Sustitución del módulo http predeterminado por el parser llhttp;
- Migración de lib al estilo ECMAScript 6 para la herencia de clases;
- Soporte experimental para módulos ECMAScript 6;
- Modificación de las restricciones del tamaño del heap en JavaScript, que ahora se determinan dinámicamente en función del tamaño de la RAM en lugar de ser fijas;
- Soporte mejorado para módulos nativos (en C/C++) en combinación con Worker threads y N-API v4, para facilitar el uso de threads nativos con funciones asíncronas en C/C++;
- Simplificación del uso de la API Worker Threads, para la que ya no es necesario activar el flag de habilitación de la función experimental;
- Incorporación de la capacidad experimental de generar al vuelo informes de diagnóstico que registran eventos para ayudar a diagnosticar problemas como caídas, bajadas de rendimiento, fugas de memoria, alta carga de CPU y salidas de error inesperadas;
- Implementación de un comando para guardar un volcado del estado del heap para el análisis posterior de problemas de asignación de memoria;
- Arranque más rápido gracias a una caché integrada con el código compilado de las bibliotecas JavaScript. Si antes la caché se llenaba durante la ejecución, ahora su contenido para las bibliotecas integradas en Node.js se genera en tiempo de compilación y se vincula al ejecutable. El nuevo modelo de llenado de caché redujo el tiempo de inicio del hilo principal en aproximadamente un 30%;
- Requisitos más exigentes de plataforma y versiones de compilador: las compilaciones requieren ahora al menos GCC 6 y glibc 2.17 en plataformas distintas de macOS y Windows. Las distribuciones compatibles incluyen Enterprise Linux 7, Debian 8 y Ubuntu 14.04. En Windows se requiere como mínimo Windows 7, 2008 R2 o 2012 R2 y Visual Studio 2017; en macOS se requiere al menos macOS 10.10 «Yosemite» y Xcode 8.