Buscar

¿Qué es Javascript?

¿Qué es Javascript? Breve Historia, Versiones de Javascript, ¿Dónde aprender Javascript gratis?

¿Qué es Javascript?

Javascript es un lenguaje de programación interpretado, por lo cual no es necesario compilarlo, se ejecuta directamente en el navegador aunque hay versiones modernas que se ejecutan del lado del servidor, hoy día es muy utilizado en el mundillo de las webs, webapps y apps para el desarrollo y el dinamismo de las mismas.

Breve Historia de Javascript

La aparición de javascript a principio de los 90 surgió por la necesidad de dar respuestas rapidas a una internet en ese momento muy lenta, especialmente para alertar al usuario sobre errores en formularios, así comenzaron los primeros dinamismos de internet.

Brendan Eich, un programador que trabajaba en Netscape, pensó que podría solucionar este problema adaptando otras tecnologías existentes (como ScriptEase) al navegador Netscape Navigator 2.0, que iba a lanzarse en 1995. Inicialmente, Eich denominó a su lenguaje LiveScript.

Posteriormente, Netscape firmó una alianza con Sun Microsystems para el desarrollo del nuevo lenguaje de programación. Además, justo antes del lanzamiento Netscape decidió cambiar el nombre por el de JavaScript. La razón del cambio de nombre fue exclusivamente por marketing, ya que Java era la palabra de moda en el mundo informático y de Internet de la época.

La primera versión de JavaScript fue un completo éxito y Netscape Navigator 3.0 ya incorporaba la siguiente versión del lenguaje, la versión 1.1. Al mismo tiempo, Microsoft lanzó JScript con su navegador Internet Explorer 3. JScript era una copia de JavaScript al que le cambiaron el nombre para evitar problemas legales.

Para evitar una guerra de tecnologías, Netscape decidió que lo mejor sería estandarizar el lenguaje JavaScript. De esta forma, en 1997 se envió la especificación JavaScript 1.1 al organismo ECMA European Computer Manufacturers Association).

ECMA creó el comité TC39 con el objetivo de «estandarizar de un lenguaje de script multiplataforma e independiente de cualquier empresa». El primer estándar que creó el comité TC39 se denominó ECMA-262, en el que se definió por primera vez el lenguaje ECMAScript.

Por este motivo, algunos programadores prefieren la denominación ECMAScript para referirse al lenguaje JavaScript. De hecho, JavaScript no es más que la implementación que realizó la empresa Netscape del estándar ECMAScript.

La organización internacional para la estandarización (ISO) adoptó el estándar ECMA-262 a través de su comisión IEC, dando lugar al estándar ISO/IEC-16262.

Versiones de CSS

  • ES1 (ECMAScript 1 1997) Primer versión
  • ES2 (ECMAScript 2 1998) Cambios editoriales para mantener la especificación completa alineada con el estándar internacional ISO/IEC 16262.
  • ES3 (ECMAScript 3 1999) Se agregaron expresiones regulares, mejor manejo de strings, nuevo control de declaraciones, manejo de excepciones con try/catch, definición más estricta de errores, formato para la salida numérica y otras mejoras.
  • ES4 (Abandonada) La cuarta edición fue abandonada debido a diferencias políticas respecto a la complejidad del lenguaje. Muchas características propuestas para la cuarta edición fueron completamente abandonadas; algunas fueron propuestas para la edición ECMAScript Harmony.
  • ES5 (ECMAScript 5 2009) Agrega el modo estricto («strict mode»), un subconjunto destinado a proporcionar una mejor comprobación de errores y evitar constructores propensos a errores. Aclara varias ambigüedades de la tercera edición, y afina el comportamiento de las implementaciones del «mundo real» que difieren consistentemente desde esa especificación. Agrega algunas nuevas características, como getters y setters, librería para el soporte de JSON, y una más completa reflexión sobre las propiedades de los objetos.11​
  • ES5.1 (ECMAScript 5.1 2011) Esta edición 5.1 de la ECMAScript Standard está completamente alineada con la tercera edición del estándar internacional ISO/IEC 16262:2011.
  • ES6 (ECMAScript 6 2015) La sexta edición agrega cambios significativos en la sintaxis para escribir aplicaciones complejas, incluyendo clases y módulos, definiéndolos sémanticamente en los mismos términos del modo estricto de la edición ECMAScript 5. Otras nuevas características incluyen iteradores for/of loops, generadores y generador de expresiones estilo Python, funciones de dirección, datos binarios, colecciones (mapas, sets, mapas débiles), y proxies (metaprogramación para objetos virtuales y wrappers). Al ser la primera especificación “ECMAScript Harmony”, es también conocida como “ES6 Harmony”.
  • ES7 (ECMAScript 7 2016) La séptima edición fue una mera actualización de la versión 6. Incorpora el método Array.prototype.includes() y el operador exponencial (**).
  • ES8 (ECMAScript 8 2017) La 8ª edición, oficialmente conocida como ECMAScript 2017, fue finalizada en junio de 2017.[11] Incluye constructores async/await , los cuales funcionan usando generadores y promesas.
  • ES9 (ECMAScript 9 2018) La 9.ª edición, oficialmente conocida como ECMAScript 2018, incluye operadores rest/spread para variables (tres puntos: …identificador), iteracion asincronica, Promise.prototype.finally()
  • ES10 (ECMAScript 10 2018) La 10.ª edición, oficialmente conocida como ECMAScript 2019, incorporó Array.flat(), Array.flatMap(), String.trimStart(), String.trimEnd(), errores opcionales en el bloque catch, Object.fromEntries(), Symbol.description
  • ES11 (ECMAScript 11 2020) Esta versión incluye el tipo primitivo BigInt para enteros de tamaño arbitrario primitive, el operador de unión nula (en inglés, nullish coalescing), el encadenamiento opcional (en inglés, optional chaining) y el objeto globalThis
  • ES12 (ECMAScript 11 2021) Promise.any, replaceAll, cambios en los metodos privados de clase, cambios en el operador de asignación logica «&& || ??», AggregateError,WeakRef.

¿Dónde aprender Javascript gratis?