1. Características
1.1. Lenguaje interpretado
1.1.1. El código fuente se ejectua sin necesidad de un proceso de compilación previo
1.2. Orientado a objetos
1.2.1. Objetos con propiedades y métodos que permiten la reutilización del código a través de la definición de clases
1.3. Tipado dinámico
1.3.1. Las variables no se encuentran asociadas a un tipo de dato específico y pueden variar durante la ejecución del programa
1.4. Manipulación del DOM
1.4.1. Interactúa con el Document Object Model (DOM), el cuál permite modificar y manupular elementos HTML, cambiar estilos y agregar o eliminar elementos
1.5. Funciones de alto orden
1.5.1. Las funciones pueden ser asignadas a variables, las cuales pasan como argumentos a otras funciones y son devueltas como valores de función
1.6. Asincronía
1.6.1. Permite el manejo de operaciones asíncronas mediante el uso de callbacks, promesas y async/await, lo que permite la ejecuón de tareas sin generar bloqueos al programa