Lenguaje de programación : lenguaje informático formal diseñado para escribir programas que se ejecuten en computadoras. JavaScript se utiliza principalmente para automatizar páginas web o crear programas que funcionen dentro de ellas. Sus capacidades incluyen la producción de gráficos y la manipulación de texto, código HTML, así como reglas y elementos CSS.
Lenguaje de programación de alto nivel : lenguaje de programación más parecido al lenguaje humano y menos tedioso que el código de máquina , que ofrece funciones que estandarizan las tareas comunes, permiten una depuración completa y mantienen la independencia de la máquina. En lugar de lidiar con registros y direcciones de memoria, JavaScript incluye variables, funciones y otras construcciones abstractas, lo que lo hace más lento que el código de máquina, pero mucho más fácil de escribir.
Lenguaje de programación dinámico : clase de lenguajes de programación de alto nivel que ejecutan ciertos comportamientos de programación a medida que se ejecutan, lo que los hace más flexibles que los lenguajes de programación estáticos (que realizan esos comportamientos durante la compilación). Por ejemplo, como ocurre con la mayoría de los lenguajes de programación, JavaScript tiene tipos dinámicos : sus tipos se asocian con cada valor , en lugar de solo con cada expresión. (Por ejemplo, una variable que en un momento está vinculada a un número puede volver a vincularse más tarde a una cadena . [2] ).
Lenguaje interpretado : lenguaje de programación para escribir instrucciones que son ejecutadas directamente por un intérprete , sin compilación . Esto es lo que hace que los programas JavaScript sean independientes de la plataforma ; normalmente son interpretados por los distintos motores JavaScript integrados en los navegadores.
Lenguaje de programación multiparadigma : lenguaje de programación diseñado para permitir a los programadores utilizar el estilo de programación y las estructuras de lenguaje asociadas más adecuadas para un trabajo determinado, teniendo en cuenta que ningún paradigma resuelve todos los problemas de la manera más fácil o eficiente. Consulte Estilos de programación admitidos .
Lenguaje basado en objetos : lenguaje de programación que utiliza la idea de encapsular el estado y las operaciones dentro de "objetos". Los lenguajes basados en objetos no necesitan admitir la herencia o la subtipificación, pero aquellos que sí lo hacen también se denominan "orientados a objetos", e incluyen aquellos que admiten un estilo de programación basado en prototipos , como JavaScript, que no tiene clases, sino que los objetos heredan su código y datos directamente de otros objetos "plantilla".
Lenguaje de scripts : lenguaje de programación que admite scripts. Los scripts automatizan la ejecución de tareas que, de forma alternativa, podrían ser ejecutadas una por una por un operador humano. Los scripts son programas escritos para un entorno de ejecución especial; el principal tipo de entorno de ejecución para el que se escriben los programas JavaScript son los navegadores.
Lenguaje de programación sin tipo : un lenguaje sin tipo, como JavaScript, permite realizar cualquier operación en cualquier dato, que generalmente se considera una secuencia de bits de distintas longitudes. [3]
Nombres de JavaScript
Etimología de JavaScript
Etimología de JavaScript : el lenguaje inicialmente se llamó Mocha, luego cambió a LiveScript y luego pasó a llamarse JavaScript.
"Java": el "Java" en "JavaScript" ha causado confusión, ya que implica una relación con el lenguaje de programación Java. JavaScript no es una versión, distribución o derivado de Java, aunque JavaScript se inspiró en Java para su sintaxis. El hecho de que Netscape haya nombrado a JavaScript en honor a Java se ha caracterizado como una estrategia de marketing para aprovechar la popularidad de la palabra "Java" en ese momento.
"Script": el "Script" en "JavaScript" ya no describe el lenguaje con precisión. Si bien JavaScript comenzó como un lenguaje de script, se ha convertido en un lenguaje de programación multiparadigmático sofisticado, aunque conserva su funcionalidad de lenguaje de script.
Sinónimos de JavaScript
ECMAScript : el lenguaje de especificación en el que se basa JavaScript. Los términos EMCAScript y JavaScript se utilizan indistintamente en este campo. "ES" también se ha utilizado como prefijo para los nombres abreviados de las versiones de JavaScript: [4]
'ES5': ECMAScript quinta edición, adoptada en 2009.
'ES6' / 'ES2015': ECMAScript sexta edición, adoptada en 2015.
'ES7' / 'ES2016': Séptima edición de ECMAScript, adoptada en 2016.
'ES2017': ECMAScript octava edición, adoptada en 2017.
'ES2018': ECMAScript 2018 – Novena edición
'ES2019': ECMAScript 2019 – Décima edición
'ES2020': ECMAScript 2020 – 11.ª edición
'ES2021': ECMAScript 2021 – 12.ª edición
'ES2022': ECMAScript 2022 – 13.ª edición
'ES2023': ECMAScript 2023 – 14.ª edición
JScript : básicamente, "JavaScript para Internet Explorer". Microsoft realizó ingeniería inversa de JavaScript y luego denominó la implementación JScript para evitar infringir la propiedad de Sun sobre la marca registrada JavaScript. Desde entonces, Microsoft ha pasado a utilizar el nombre JavaScript para referirse a la implementación de JScript utilizada en su navegador Edge.
JavaScript vainilla o "Vanilla JS": jerga para "JavaScript simple", es decir, JavaScript no ampliado por ningún marco o biblioteca adicional.
Marca registrada de JavaScript
Propiedad de la marca registrada JavaScript : "JavaScript" como marca registrada es técnicamente propiedad de Oracle, que adquirió Sun, que adquirió NetScape, que creó JavaScript y registró inicialmente la marca registrada.
Falta de aplicación de la marca registrada JavaScript: no parece que se esté aplicando la marca registrada y puede resultar indefendible. Muchas empresas y personas del sector la utilizan en los nombres de sus productos como término genérico, aparentemente sin repercusiones legales.
Usos de JavaScript
JavaScript se puede utilizar para:
Scripts de usuario : programas que los usuarios ejecutan en sus navegadores, generalmente escritos en JavaScript, para modificar páginas web y mejorar la navegación.
Gadgets : muchos gadgets de Wikipedia (programas que modifican o añaden funcionalidad a Wikipedia) están escritos en JavaScript.
Servidores web escritos para ejecutarse en node.js
Requisitos previos para utilizar JavaScript
Equipo necesario para utilizar JavaScript
Computadora : JavaScript es un lenguaje de programación, por lo que, por supuesto, necesitas una computadora para usarlo.
Navegador web : los scripts escritos en JavaScript se encuentran en la mayoría de las páginas web y requieren un navegador web para acceder a ellas. La mayoría de los navegadores web tienen un motor JavaScript integrado que ejecuta scripts de páginas web.
Prerrequisitos para comprender JavaScript
Requisitos previos para comprender JavaScript: JavaScript es una de las tres tecnologías principales que se utilizan para definir páginas web. JavaScript es una tecnología complementaria que funciona con HTML y CSS, entre otros. JavaScrpt hace referencia al marcado y lo modifica, por lo que comprender estos otros lenguajes resulta útil para escribir programas JavaScript.
HTML (lenguaje de marcado de hipertexto): lenguaje de marcado estándar utilizado para crear las páginas web (archivos HTML) que conforman la World Wide Web y que son leídas y presentadas por los navegadores web. HTML proporciona un medio para crear documentos estructurados al indicar la semántica estructural de textos como encabezados, párrafos, listas, enlaces, citas y otros elementos. Los elementos HTML forman los bloques de construcción de los archivos HTML ("páginas HTML") y JavaScript se utiliza para cambiar dinámicamente las páginas HTML modificando sus elementos HTML o creando otros nuevos.
CSS (Cascading Style Sheets) – lenguaje de hojas de estilo utilizado para describir la presentación de un documento escrito en un lenguaje de marcado (incluido HTML). [5] CSS está diseñado principalmente para permitir la separación del contenido del documento de la presentación del mismo , incluidos aspectos como el diseño , los colores y las fuentes . [6] Esta separación puede mejorar la accesibilidad del contenido , proporcionar más flexibilidad y control en la especificación de las características de presentación, permitir que varias páginas HTML compartan formato especificando el CSS relevante en un archivo .css separado y reducir la complejidad y la repetición en el contenido estructural. JavaScript puede modificar dinámicamente CSS para cambiar la presentación de las páginas web.
Herramientas necesarias para la programación en JavaScript
Herramientas necesarias para la programación en JavaScript: la única herramienta necesaria para escribir programas en JavaScript es un editor de texto, aunque otras herramientas son muy útiles.
Editor de texto : programa que se utiliza para editar archivos de texto sin formato. Los programas JavaScript se pueden escribir incluso en el editor de texto más simple.
(Para obtener herramientas opcionales pero útiles, consulte las herramientas de JavaScript a continuación)
Método de ejecución
Método de ejecución : cómo se inicia un programa informático. Normalmente, los programas JavaScript se integran en el código HTML de una página web o se invocan desde el código HTML mediante una llamada a un script, y el navegador los ejecuta automáticamente cuando lee la página web. Otro método es el bookmarklet, que requiere que el usuario haga clic en él para ejecutarse. Entre los distintos métodos de ejecución de los programas JavaScript se incluyen los siguientes:
Métodos de ejecución de scripts en navegadores web:
Incrustar en HTML de la página web
Etiquetas de script: un script se incrusta en una página web al incluirlo entre <script>y</script>
Llamada de guión
Bookmarklet : técnica para guardar código JavaScript dentro de un marcador o hipervínculo, de modo que se pueda ejecutar haciendo clic en él. En muchos casos, el bookmarklet se puede arrastrar y soltar en la barra de herramientas del navegador para facilitar el acceso. A continuación se muestra un ejemplo de bookmarklet:
JavaScript:name=prompt("¿Cuál es tu nombre?"); alert("Hola, " + nombre);
Se instala como una extensión del navegador : una extensión del navegador es un complemento que amplía la funcionalidad de un navegador web de alguna manera. Muchas extensiones del navegador están escritas en JavaScript.
Instalado como complemento en Firefox: los complementos de Firefox permiten al usuario agregar o ampliar funciones de la aplicación, usar temas a su gusto y manejar nuevos tipos de contenido. Muchos complementos están escritos en JavaScript.
Se instala como un script de usuario : programa JavaScript escrito para modificar páginas web y mejorar la navegación. Se instalan en los navegadores mediante el uso de una extensión de navegador para el administrador de scripts de usuario, como Tampermonkey o Greasemonkey . También hay una función de script de usuario disponible para los usuarios registrados de Wikipedia, que puede mejorar la edición y visualización de las páginas de esa enciclopedia.
Métodos de ejecución de scripts en entornos de ejecución:
Métodos de ejecución de scripts en otros programas:
Requisitos del sistema para JavaScript
Compatibilidad del entorno con JavaScript
Compatibilidad del entorno con JavaScript: donde se puede ejecutar JavaScript. Esto incluye compatibilidad del lado del cliente en navegadores, compatibilidad del lado del servidor en servidores web y entornos de ejecución para brindar compatibilidad con sistemas operativos en computadoras de escritorio y otras máquinas.
En la World Wide Web, JavaScript puede ejecutarse en el servidor web (o "del lado del servidor") en las páginas web (o para generarlas) antes de que se envíen al cliente (el navegador del usuario), o puede ejecutarse del lado del cliente por el cliente al recibir una página web. El JavaScript del lado del cliente suele estar integrado en el HTML de las páginas web.
Compatibilidad con entornos del lado del cliente: esto se logra mediante scripts del lado del cliente . Los scripts del lado del cliente son compatibles con:
Navegadores: JavaScript puede ejecutarse en navegadores que incluyan un motor JavaScript (ver a continuación). El código fuente JavaScript que está incrustado en el HTML de una página web es ejecutado automáticamente por el motor JavaScript del navegador cuando este lee la página.
Compatibilidad con entornos del lado del servidor: esto se implementa mediante scripts del lado del servidor . Los scripts del lado del servidor son compatibles con:
Servidores web: JavaScript puede ejecutarse en servidores web que incluyan un entorno de ejecución de JavaScript (como Node.js ) u otra solución del lado del servidor .
Compatibilidad con el entorno local: JavaScript se puede utilizar para escribir aplicaciones para su uso en computadoras de usuarios finales, y esas aplicaciones se pueden ejecutar utilizando un entorno de ejecución de JavaScript , como Node.js.
Compatibilidad con sistemas operativos: JavaScript puede ejecutarse en cualquier sistema operativo que admita un entorno de ejecución de JavaScript , como Node.js.
Chakra : motor de JavaScript desarrollado por Microsoft para su navegador web Microsoft Edge. Es una bifurcación del motor JScript utilizado en Internet Explorer.
SquirrelFish : intérprete de código de bytes reescrito desde JavaScriptCore.
Nashorn – Motor de JavaScript desarrollado en el lenguaje de programación Java por Oracle . Está basado en la máquina Da Vinci (JSR 292) y fue lanzado con Java 8. Sus propósitos son permitir la incorporación de JavaScript en aplicaciones Java y desarrollar aplicaciones JavaScript independientes.
Rhino : motor de JavaScript escrito íntegramente en Java y administrado por la Fundación Mozilla como software de código abierto. Está pensado para usarse en aplicaciones del lado del servidor, por lo que no tiene compatibilidad integrada con los objetos del navegador web que se asocian comúnmente con JavaScript.
(Para motores que ya no se desarrollan ni mantienen activamente, consulte Motores JavaScript obsoletos)
Entornos de ejecución de JavaScript
Entornos de ejecución de JavaScript
Node.js : entorno de ejecución de código abierto y multiplataforma para JavaScript que ejecuta código JavaScript en el servidor para generar contenido dinámico de páginas web antes de que la página se envíe al navegador del usuario. Node.js se basa en el motor de JavaScript Chrome V8.
Seed – intérprete y biblioteca del proyecto GNOME para crear aplicaciones independientes en JavaScript. Utiliza el motor JavaScript JavaScriptCore del proyecto WebKit.
CouchDB : base de datos de servidor que utiliza JavaScript como lenguaje de consulta.
Características de JavaScript
Soporte web universal: todos los navegadores web modernos admiten JavaScript con un motor JavaScript integrado.
Especificaciones y estándares de JavaScript
Especificaciones principales
ECMAScript : especificación estándar basada originalmente en JavaScript. Desde el inicio de ECMAScript, JavaScript ha seguido esa especificación. Si bien JavaScript apunta a ser compatible con ECMAScript, también proporciona características adicionales que no se describen en las especificaciones de ECMA. [8]
CommonJS : proyecto para crear especificaciones para JavaScript más allá de la programación del lado del cliente, con el fin de ampliarlo a un lenguaje más completo. Por ejemplo, para escribir programas del lado del servidor y aplicaciones de escritorio nativas.
Definición de módulo asincrónico (AMD): especificación de API para JavaScript que define módulos de código y sus dependencias, y los carga de forma asincrónica si se desea.
Política de seguridad de contenido : estándar de seguridad informática introducido para evitar ataques de secuencias de comandos entre sitios (XSS), clickjacking y otros ataques de inyección de código resultantes de la ejecución de contenido malicioso en el contexto de una página web confiable.
JSGI : interfaz entre servidores web y aplicaciones y marcos web basados en JavaScript.
Programación basada en eventos en JavaScript [9] – La programación basada en eventos es un paradigma de programación en el que el flujo del programa está determinado por eventos como acciones del usuario (clics del mouse, pulsaciones de teclas), salidas de sensores o mensajes de otros programas/subprocesos.
Programación declarativa en JavaScript [10] : la programación declarativa se centra en lo que el programa debe lograr en lugar de en cómo debe hacerse. En este paradigma, la programación se realiza con expresiones o declaraciones en lugar de instrucciones. Es lo opuesto a la programación imperativa.
Programación imperativa en JavaScript: la programación imperativa es un enfoque que implementa algoritmos en pasos explícitos, en forma de comandos que la computadora debe ejecutar. Utiliza instrucciones que cambian el estado de un programa. El enfoque se centra en cómo funciona un programa. Es lo opuesto a la programación declarativa.
Programación estructurada en JavaScript: la programación estructurada es un estilo de programación que hace un uso extensivo de subrutinas, estructuras de bloques y bucles for y while, en contraste con el uso de pruebas y saltos simples como la instrucción go to que podría generar un "código espagueti" que dificulta tanto su seguimiento como su mantenimiento. Esto mejora la claridad, la calidad y el tiempo de desarrollo de los programas.
Sintaxis de JavaScript (ver tutorial) : conjunto de reglas que definen la estructura correcta de las líneas de código en un programa JavaScript, como cuándo se necesitan punto y coma al final de una declaración, si importa o no el uso de mayúsculas y minúsculas, dónde y cómo usar paréntesis, qué palabras están reservadas como parte del lenguaje, el uso de espacios en blanco, el formato adecuado para declaraciones de variables, expresiones, declaraciones, funciones, etc.
Comentarios en JavaScript (ver tutorial) – JavaScript usa // para continuar con los comentarios y /* */ para comentarios de varias líneas.
Estilos de notación en JavaScript
Notación literal en JavaScript –
Notación de constructor en JavaScript –
Notación de fábrica en JavaScript –
Palabras reservadas en JavaScript –
Tipos de datos en JavaScript
[[Tipo de datos (JavaScript)|Tipos de datos en JavaScript] – un tipo es una clasificación de datos que define las operaciones que se pueden realizar con los datos, el significado de los datos y la forma en que se pueden almacenar los valores de ese tipo.
Tipo de datos booleano : tipo de datos que tiene dos valores (normalmente denominados verdadero y falso). Se asocia principalmente con instrucciones condicionales, que permiten diferentes acciones y cambian el flujo de control según si una condición booleana especificada por el programador se evalúa como verdadera o falsa.
Objetos en JavaScript (ver tutorial) : "objeto" en JavaScript significa "matriz asociativa". Los objetos en JavaScript corresponden a los hashes en Perl.
Variables en JavaScript
Variables en JavaScript [12] : una variable es una ubicación de almacenamiento asociada a un nombre simbólico (un identificador), que contiene una cantidad de información conocida o desconocida denominada valor . Corresponden a las variables en matemáticas , pero no se limitan a representar solo números.
Declaraciones en JavaScript [14] : una declaración es el elemento independiente más pequeño de un lenguaje de programación que expresa alguna acción que debe llevarse a cabo. Las declaraciones son instrucciones que ordenan a la computadora que realice una acción específica.
Funciones en JavaScript[2] – En JavaScript, las subrutinas se denominan "funciones". Una subrutina es una secuencia de instrucciones de programa que realizan una tarea específica, empaquetadas como una unidad. Esta unidad puede luego usarse (y reutilizarse) en el programa donde sea que se deba realizar esa tarea en particular.
DOM : significa Document Object Model (modelo de objetos del documento), la jerarquía (árbol) que genera el navegador de todos los elementos de una página web. Al procesar el DOM a través de "métodos" (funciones almacenadas como propiedades de los objetos, es decir, las acciones que se pueden realizar sobre los objetos), JavaScript puede cambiar dinámicamente el HTML de la página [18] , como por ejemplo:
Ajax (JavaScript y XML asíncronos): conjunto de técnicas de desarrollo web que utilizan muchas tecnologías web en el lado del cliente para crear aplicaciones web asíncronas. Con Ajax, las aplicaciones web pueden enviar datos a un servidor y recuperarlos de forma asíncrona (en segundo plano) sin interferir con la visualización y el comportamiento de la página existente. Al disociar la capa de intercambio de datos de la capa de presentación, Ajax permite que las páginas web y, por extensión, las aplicaciones web cambien el contenido de forma dinámica sin necesidad de volver a cargar la página completa.
Bookmarklet : técnica para guardar código JavaScript dentro de un marcador o hipervínculo, de modo que se pueda ejecutar haciendo clic en él. En muchos casos, el enlace se puede arrastrar y soltar en la barra de herramientas del navegador para facilitar el acceso.
Scripts HTML: cómo se pueden usar scripts ejecutables localmente (como aquellos escritos en JavaScript) en una página web.
Marcos de trabajo del lado del cliente de JavaScript
Amplio SDK
Apache Cordova : permite crear aplicaciones para dispositivos móviles utilizando CSS3, HTML5 y JavaScript en lugar de depender de API específicas de la plataforma como las de Android, iOS o Windows Phone.
Componente de página web JavaScript: un programa JavaScript que se convierte en parte de una página web.
Ace (editor) : editor de código independiente escrito en JavaScript que se puede integrar fácilmente en cualquier página web y aplicación JavaScript.
Aloha Editor – editor WYSIWYG de código abierto, escrito en JavaScript, que puede utilizarse en páginas web para proporcionar edición de contenido dentro del mismo diseño que se muestra a los lectores.
CodeMirror : proporciona un editor de código en el navegador
CKEditor – editor de texto WYSIWYG de código abierto diseñado para incorporar funciones comunes de procesadores de texto directamente a páginas web, simplificando la creación de contenido. Su código principal está escrito en JavaScript.
ContentTools es un editor WYSIWYG de código abierto para contenido HTML que permite crear regiones editables en páginas web. Está escrito en JavaScript/CoffeeScript.
Calendario de JavaScript de Epoch –
Herramientas de JavaScript
Herramienta de JavaScript –
Bookmarklet : marcador o hipervínculo que contiene JavaScript y se ejecuta al hacer clic en él. Se puede arrastrar y soltar en la barra de herramientas para facilitar el acceso.
Linters : un lint o linter es una herramienta de software que analiza el código fuente para señalar errores de programación, fallos, errores de estilo y construcciones sospechosas.
Firebug : complemento gratuito y de código abierto para Mozilla Firefox para depurar, editar y monitorear en vivo el CSS, HTML, DOM, XHR y JavaScript de cualquier sitio web.
Ace : editor de código independiente gratuito y de código abierto escrito en JavaScript que puede integrarse fácilmente en cualquier página web o aplicación JavaScript.
Alphatk : editor propietario que se ejecuta en cualquier plataforma en la que se ejecute Tk (es decir, la mayoría).
Aquamacs – editor de Emacs gratuito para usar en Mac OS X.
Atom es un editor de texto y código fuente gratuito y de código abierto para macOS, Linux y Microsoft Windows compatible con complementos escritos en Node.js y con control Git integrado, desarrollado por GitHub. Atom es una aplicación de escritorio creada con tecnologías web, escrita en CoffeeScript y Less .
BBEdit – editor de código fuente comercial diseñado para desarrolladores de software y diseñadores web en Mac OS X.
CodeMirror es un componente editor de código libre y de código abierto que se puede incorporar en páginas web. Tiene una API de programación completa y se centra en la extensibilidad.
Notepad++ – editor de texto gratuito y versátil para el sistema operativo Windows.
Visual Studio Code : incluye finalización de código inteligente para JavaScript, JSON y TypeScript, así como funciones de depuración para JavaScript, TypeScript y Node.js.
Eclipse : su uso principal es el desarrollo de aplicaciones Java, pero también puede usarse para desarrollar aplicaciones en otros lenguajes de programación, incluido JavaScript, mediante el uso de complementos.
Para obtener muchos más libros y páginas web sobre JavaScript, consulte #Lecturas adicionales, a continuación.
Codecademy (curso gratuito de JavaScript): plataforma interactiva en línea que ofrece clases de codificación gratuitas en 12 lenguajes de programación diferentes, incluido JavaScript (jQuery, AngularJS y React.js), así como el lenguaje de marcado HTML y CSS.
Coursera (cursos de JavaScript): ofrece cursos MOOC , algunos de ellos accesibles de forma gratuita.
freeCodeCamp (sitio): plataforma web de aprendizaje interactivo sin fines de lucro que hace que el aprendizaje del desarrollo web, incluido JavaScript, sea accesible para cualquier persona.
Khan Academy (cursos JS): organización educativa sin fines de lucro con la misión de "ofrecer una educación gratuita de primer nivel a cualquier persona, en cualquier lugar", proporcionando cursos de video y materiales de instrucción gratuitos en línea.
Mozilla Developer Network (sitio) – sitio web oficial de Mozilla para la documentación de desarrollo de estándares web y proyectos de Mozilla. Es un recurso para desarrolladores, mantenido por la comunidad de desarrolladores y escritores técnicos y que alberga muchos documentos sobre una amplia variedad de temas, como: HTML5, JavaScript, CSS, API web y Node.
W3Schools (sitio): sitio web popular para aprender tecnologías web en línea, que incluye tutoriales y material de referencia para JavaScript, jQuery, AngularJS, JSON, Ajax y W3.js.
Publicaciones de JavaScript
Para publicaciones gratuitas en línea, consulte #Lecturas adicionales, a continuación
Noticias sobre JavaScript
http://www.echojs.com/
https://cooperpress.com/ publica boletines informativos sobre JavaScript
JavaScript semanal
http://www.webplatformdaily.org/
http://www.flippinawesome.org/category/news/best-of/ lista semanal
Primera guerra de navegadores : la guerra de navegadores entre NetScape Navigator y Microsoft Internet Explorer en la década de 1990. JavaScript se lanzó durante la oleada de desarrollo de nuevas características inspiradas en esa guerra.
JScript : dialecto heredado de Microsoft del estándar ECMAScript que se utiliza en el navegador web Internet Explorer de Microsoft. Se diseñó a partir de JavaScript y se admitió por primera vez en el navegador Internet Explorer 3.0, que se lanzó en agosto de 1996.
Hojas de estilo JavaScript : fue una tecnología de lenguaje de hojas de estilo propuesta por Netscape Communications en 1996 para proporcionar facilidades para definir la presentación de páginas web.
Sputnik – fue un conjunto de pruebas de conformidad de JavaScript para ECMA-262 (5.ª edición), desarrollado en Rusia.
Hitos
1995
Sun Microsystems y Netscape anunciaron JavaScript en un comunicado de prensa. [23]
JavaScriptCore : marco que ofrecía un motor de JavaScript para implementaciones de WebKit y ejecutaba scripts en otros contextos dentro de macOS. Fue reescrito y reemplazado por SquirrelFish en 2008.
Tutoriales de JavaScript : nivel principiante, intermedio y avanzado
Prácticas recomendadas de JavaScript : consejos generales para mejorar la creación de scripts
Parte 1
Parte 2
JavaScript de la manera correcta : amplia bibliografía de recursos en línea (enlaces) para JavaScript, organizados por tema
Cómo aprender JavaScript correctamente : ofrece guías de estudio para programadores principiantes y experimentados de JavaScript y enumera muchos recursos.
Principiante
JavaScript WikiBook: libro de nivel introductorio escrito por la comunidad sobre JavaScript, de Wikibooks
Lecciones de JavaScript de Wikiversity: lecciones sobre JavaScript escritas en colaboración por la comunidad
Aprenda JavaScript : cubre los conceptos básicos de JavaScript
Una reintroducción a JavaScript (tutorial de JS) : cuando esté listo para una segunda oportunidad.
Terminología de JavaScript para principiantes : 5 características clave del lenguaje
Eloquent JavaScript (pdf): introducción a JavaScript y a la programación en general, para principiantes
JavaScript para gatos (pdf): fácil también para humanos
Tutorial de JavaScript – de w3schools.com
Fundamentos de jQuery : descripción general de la biblioteca de JavaScript jQuery, que enseña al principiante a usarla para programar tareas básicas
Tutorial de conceptos básicos de jQuery: tutorial con editor integrado y ejemplos con los que el lector puede experimentar
Hablando JavaScript: una guía detallada para programadores : asume que ya conoce otro lenguaje de programación orientado a objetos
Intermedio
Human JavaScript : “herramientas, patrones y enfoques optimizados para las personas”
JavaScript Allongé (ES5): explica el lenguaje y cómo funciona, con un enfoque en las funciones.
JavaScript Garden : recopilación de consejos y documentación sobre las peculiaridades de JavaScript
Aprendizaje de patrones de diseño de JavaScript : soluciones reutilizables a problemas comunes que ocurren en el diseño de software.
Guía bastante adecuada del profesor Frisby para la programación funcional (en JavaScript) –
Comprensión de ECMAScript 6 : cubre el núcleo del lenguaje con mayor profundidad y explica las diferencias entre ECMAScript5 y ECMAScript6.
No conoces JS (serie) – JS significa JavaScript, no lo otro. Abarca el lenguaje en profundidad. El autor puso a disposición las versiones preliminares de forma gratuita:
No conoces a JS: Up & Going
No conoces JS: tipos y gramática
No conoces JS: alcance y cierres
No conoces JS: esto y los prototipos de objetos
No conoces JS: Async y rendimiento
No conoces JS: ES6 y posteriores
Avanzado
JavaScript en diez minutos : descripción general de las funciones avanzadas para programadores que conocen algo de JavaScript
Explorando ES2016 y ES2017 : novedades en ECMAScript 2016 y ECMAScript 2017 (ECMAScript es la especificación estándar que sigue JavaScript)
Programación de aplicaciones JavaScript –
JavaScript Spessore : desarrollo de aplicaciones con foco en objetos y metaobjetos
Basado en extensión
Comercial
Referencia general
Principiante
McPeak, Jeremy; Winton, Paul (2015). Introducción a JavaScript (quinta edición). John Wiley & Sons. ISBN 978-1-118-90374-2.
Chinnathambi, Kirupa (2017). Guía para principiantes absolutos de JavaScript. Pearson Education. ISBN 978-0-7897-5806-4.
Diseño de aplicaciones JavaScript: un enfoque de compilación inicial , Nicolas G. Bevacqua, Manning Publications, 2015. ISBN 9781617291951 , 344 páginas
Referencias
^ "JavaScript | Historia, aplicaciones y hechos | Britannica". www.britannica.com . 2024-06-07 . Consultado el 2024-07-12 .
^ "Tipos de datos y estructuras de datos de JavaScript". MDN Web Docs .
^ Andrew Cooke. «Introducción a los lenguajes informáticos» . Consultado el 13 de julio de 2012 .
^ ab "Especificación del lenguaje ECMAScript" (PDF) .
^ "Guía para desarrolladores de CSS". Red de desarrolladores de Mozilla . Consultado el 24 de septiembre de 2015 .
^ "¿Qué es CSS?". World Wide Web Consortium . Consultado el 1 de diciembre de 2010 .
^ Looper, Jen (21 de septiembre de 2015). "Una guía de motores de JavaScript para idiotas". Telerik Developer Network . Consultado el 17 de marzo de 2016 .
^ "JScript vs JavaScript". About.com. 25 de noviembre de 2015.
^ "Programación basada en eventos (en javascript)". www.24hr.se .
^ en JavaScript El estado de JavaScript: un cambio de lo imperativo a lo declarativo
^ Domina la entrevista de JavaScript: ¿Qué es la programación funcional?
^ Tutorial sobre variables en JavaScript)
^ Lista de operadores)
^ [1]
^ Clases
^ Módulos de JavaScript: guía para principiantes
^ Tutorial sobre expresiones regulares en JavaScript
^ "DOM HTML de JavaScript". www.w3schools.com .
^ "jQuery: la biblioteca de JavaScript que permite escribir menos y hacer más". El proyecto jQuery . Consultado el 29 de abril de 2010 .
^ "Uso de bibliotecas JavaScript para sitios web" . Consultado el 14 de julio de 2015 .
^ "Estadísticas de uso de jQuery" . Consultado el 17 de mayo de 2013 .
^ "Libscore".
^ "Netscape y Sun anuncian JavaScript, el lenguaje de programación de objetos multiplataforma abierto para redes empresariales e Internet". Netscape. 4 de diciembre de 1995. Archivado desde el original el 16 de septiembre de 2007. Consultado el 31 de octubre de 2013 .
^ "JavaScript Meetup City", Abierto , The New York Times , 4 de abril de 2012
^ Entrevista: Jeremy Ashkenas habla sobre CoffeeScript