Tutorial JS

JS INICIO JS Introducción JS Dónde Salida JS Declaraciones JS Sintaxis JS Comentarios JS Variables JS JS Vamos Constante JS Operadores JS Aritmética JS Tarea JS Tipos de datos JS Funciones JS Objetos JS Eventos JS Cadenas JS Métodos de cadena JS Búsqueda de cadenas JS Plantillas de cadena JS Números JS Métodos numéricos JS Matrices JS Métodos de matriz JS Clasificación de matriz JS Iteración de matriz JS Constante de matriz JS Fechas JS Formatos de fecha JS Métodos de obtención de fecha JS Métodos de configuración de fechas JS Matemáticas JS JS al azar Booleanos JS Comparaciones JS Condiciones JS Interruptor JS Bucle JS para Bucle JS para entrada Bucle JS para de Bucle JS mientras descanso JS Iterables JS Conjuntos JS Mapas JS JS Tipo de Conversión de tipo JS JS bit a bit JS expresión regular Errores JS Alcance JS JS Elevación Modo estricto JS JS esta palabra clave Función de flecha JS Clases JS JSJSON Depuración JS Guía de estilo JS Prácticas recomendadas de JS Errores JS Rendimiento JS Palabras reservadas de JS

Versiones JS

Versiones JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Borde Historia de JS

Objetos JS

Definiciones de objetos Propiedades del objeto Métodos de objetos Visualización de objetos Accesores de objetos Constructores de objetos Prototipos de objetos Objeto iterables Conjuntos de objetos Mapas de objetos Referencia de objeto

Funciones JS

Definiciones de funciones Parámetros de función Invocación de funciones Llamada de función Función Aplicar Cierres de funciones

Clases JS

Introducción a la clase Herencia de clase Clase estática

JS asíncrono

Devoluciones de llamada JS JS asíncrono Promesas JS JS asíncrono/espera

JS HTML DOM

Introducción al DOM Métodos DOM Documento DOM Elementos DOM DOM HTML Formularios DOM DOM CSS Animaciones DOM Eventos DOM Oyente de eventos DOM Navegación DOM Nodos DOM Colecciones DOM Listas de nodos DOM

Lista de materiales del navegador JS

Ventana JS Pantalla JS Ubicación de JS Historia de JS Navegador JS Alerta emergente JS Tiempo JS Galletas JS

API web de JS

Introducción a la API web API de formularios web API de historial web API de almacenamiento web API de trabajo web API de búsqueda web API de geolocalización web

JS AJAX

Introducción a AJAX AJAX XMLHttp Solicitud AJAX Respuesta AJAX Archivo XML AJAX AJAXPHP Ajax ASP Base de datos AJAX Aplicaciones AJAX Ejemplos de AJAX

JSJSON

Introducción JSON Sintaxis JSON JSON frente a XML Tipos de datos JSON Análisis JSON Cadena JSON Objetos JSON Matrices JSON Servidor JSON JSONPHP JSONHTML JSON JSONP

JS frente a jQuery

Selectores jQuery HTML de jQuery CSS de jQuery DOM de jQuery

Gráficos JS

Gráficos JS Lienzo JS JS Trazado Gráfico JS.js Gráfico de Google JS JS D3.js

Ejemplos de JS

Ejemplos de JS JS HTML DOM Entrada HTML JS Objetos JS HTML Eventos JS HTML Navegador JS Editor JS Ejercicios JS Prueba JS Certificado JS

Referencias JS

Objetos JavaScript Objetos HTML DOM


Historial de JavaScript


JavaScript / ECMAScript

JavaScript fue inventado por Brendan Eich en 1995.

Fue desarrollado para Netscape 2 y se convirtió en el estándar ECMA-262 en 1997.

Después de que Netscape entregó JavaScript a ECMA, la fundación Mozilla continuó desarrollando JavaScript para el navegador Firefox. La última versión de Mozilla fue la 1.8.5. (Idéntico a ES5).

Internet Explorer (IE4) fue el primer navegador compatible con ECMA-262 Edición 1 (ES1).

Año ECMANavegador
1995   JavaScript fue inventado por Brendan Eich
1996   Netscape 2 fue lanzado con JavaScript 1.0
1997   JavaScript se convirtió en un estándar ECMA (ECMA-262)
1997 ES1 ECMAScript 1 fue lanzado
1997 ES1 IE 4 fue el primer navegador compatible con ES1
1998 ES2 ECMAScript 2 fue lanzado
1998   Netscape 42 se lanzó con JavaScript 1.3
1999 ES2 IE 5 fue el primer navegador compatible con ES2
1999 ES3 ECMAScript 3 fue lanzado
2000 ES3 IE 5.5 fue el primer navegador compatible con ES3
2000   Netscape 62 se lanzó con JavaScript 1.5
2000   Firefox 1 fue lanzado con JavaScript 1.5
2008 ES4 ECMAScript 4 fue abandonado
2009 ES5 ECMAScript 5 fue lanzado
2011 ES5 IE 9 fue el primer navegador compatible con ES5 *
2011 ES5 Firefox 4 se lanzó con JavaScript 1.8.5
2012 ES5 Soporte completo para ES5 en Safari 6
2012 ES5 Soporte completo para ES5 en IE 10
2012 ES5 Soporte completo para ES5 en Chrome 23
2013 ES5 Soporte completo para ES5 en Firefox 21
2013 ES5 Soporte completo para ES5 en Opera 15
2014 ES5 Soporte completo para ES5 en todos los navegadores
2015 ES6 ECMAScript 6 fue lanzado
2016 ES6 Soporte completo para ES6 en Chrome 51
2016 ES6 Soporte completo para ES6 en Opera 38
2016 ES6 Soporte completo para ES6 en Edge 14
2016 ES6 Soporte completo para ES6 en Safari 10
2015 ES6 Soporte completo para ES6 en Firefox 52
2018 ES6 Soporte completo para ES6 en todos los navegadores **

Nota

* Internet Explorer 9 no admitía el "uso estricto" de ES5.

** Internet Explorer 11 no es compatible con ES6.


El Comité Técnico de ECMA 39

En 1996, Netscape y Brendan Eich llevaron JavaScript a la organización internacional de estándares ECMA y se creó un comité técnico (TC39) para desarrollar el lenguaje.

ECMA-262 Edición 1 fue lanzado en junio de 1997.


De ES4 a ES6

Cuando el comité TC39 se reunió en Oslo en 2008 para acordar ECMAScript 4, se dividieron en dos campos muy diferentes:

El campamento ECMAScript 3.1 :
Microsoft y Yahoo que querían una actualización incremental de ES3.

El campamento ECMAScript 4 :
Adobe, Mozilla, Opera y Google que querían una actualización masiva de ES4.

13 de agosto de 2008, Brendan Eich escribió un correo electrónico :

No es ningún secreto que el organismo de estándares de JavaScript, el Comité Técnico 39 de Ecma, se ha dividido durante más de un año, con algunos miembros a favor de ES4, una cuarta edición importante de ECMA-262, y otros que abogan por ES3.1 basado en el ECMA-262 existente. Especificación de la edición 3 (ES3). Ahora, estoy feliz de informar que la división ha terminado.

La solución fue trabajar juntos:

  • ECMAScript 4 fue renombrado a ES5
  • ES5 debería ser una actualización incremental de ECMAScript 3.
  • Las características de ECMAScript 4 deben incorporarse en versiones posteriores.
  • TC39 debería desarrollar una nueva versión importante, de mayor alcance que ES5.

El nuevo lanzamiento planificado (ES6) recibió el nombre en código "Harmony" (¿debido a la división que creó?).

ES5 fue un gran éxito. Fue lanzado en 2009, y todos los principales navegadores (incluido Internet Explorer) cumplían plenamente en julio de 2013:

Chrome 23 IE10 / Edge Firefox 21 Safari 6 Opera 15
Nov 2012 Sep 2012 May 2013 Jul 2012 Jul 2013

ES6 también fue un gran éxito. Fue lanzado en 2015, y todos los navegadores principales cumplían totalmente en marzo de 2017:

Chrome 51 Edge 14 Firefox 52 Safari 10 Opera 38
May 2016 Aug 2016 Mar 2017 Sep 2016 Jun 2016