JavaScript (JS) es un lenguaje ligero e interpretado, orientado a objetos con  funciones de primera clase, más conocido como el lenguaje de script para páginas web, pero también usado en muchos entornos sin navegador, tales como   node.js, Apache CouchDB y Adobe Acrobat. Es un lenguaje script multi-paradigma, basado en prototipos,  dinámico, soporta estilos de programación funcional, orientada a objetos e imperativa. Leer más sobre JavaScript.

Esta sección de la web está dedicada al lenguaje JavaScript en si mismo, no a las partes que son específicas de las páginas web u otros entornos de servidor. Para información sobre las APIs específicas de las páginas web, consulte DOM y las APIs WEB

El estándar de JavaScript es ECMAScript. Desde el 2012, todos los navegadores modernos soportan completamente ECMAScript 5.1. Los navegadores más antiguos soportan por lo menos ECMAScript 3. El 17 de Julio de 2015, ECMA International publicó la sexta versión de ECMAScript, la cual es oficialmente llamada ECMAScript 2015, y fue inicialmente nombrada como ECMAScript 6 o ES6. Desde entonces, los estándares ECMAScript están en ciclos de lanzamiento anuales. Esta documentación se refiere a la última versión del borrador, que actualmente es ECMAScript 2019.

JavaScript no debe ser confundido con el lenguaje de programación Java. Ambos "Java" y "Javascript" son marcas registradas de Oracle en Estados Unidos y otros países. Sin embargo, los dos lenguajes de programación tienen muchas diferencias en las sintaxis, semántica y usos.

Tutoriales

Aprende cómo programar en JavaScript con guías y tutoriales.

Para completos novatos

Adéntrate en nuestro tema de Aprendizaje de JavaScript si quieres aprender JavaScript pero no tienes experiencia previa en JavaScript o en programación. Los siguientes son los módulos disponibles:

Primeros pasos en JavaScript
Responde algunas preguntas fundamentales como  "¿qué es JavaScript?", "¿cómo luce?" y "¿qué puedo hacer?", junto con las discusiones de las características principales de JavaScript como variables, cadenas, números, y arrays
Bloques de construcción de JavaScript
Continúa nuestra cobertura de las características principales de JavaScript, poniendo nuestra atención a tipos de bloques de código comúnmente encontrados como declaraciones condicionales, bucles, funciones y eventos.
Presentando a los Objetos en JavaScript
Si quieres profundizar tu conocimiento y escribir código más eficiente, es importante ententer la naturaleza orientada a objetos de JavaScript. Por eso, te brindamos este módulo para ayudarte.

Guía de JavaScript

Guía de JavaScript
Una guía mucho más detallada acerca del lenguaje JavaScript, dirigida a quienes cuentan con experiencia previa programando, ya sea en JavaScript o en otro lenguaje.

Intermediario

APIs web del lado del cliente
Cuando escribas JavaScript del lado del cliente para sitios web o aplicaciones, no llegarás muy lejos antes de que comiences a usar APIs — interfaces para manipular diferentes aspectos del navegador y sistema operativo en el cual el sitio esta corriendo, o incluso datos de otra web o servicios. En este módulo exploraremos qué son las APIs y cómo usar algunas de las más comunes APIs con las cuales te encontrarás en tu trabajo de desarrollo.
Una re-introducción a JavaScript
Un resumen para esos que piensan que lo saben todo sobre JavaScript.
Estructura de datos de JavaScript
Resumen de las estructuras de datos disponibles en JavaScript.
Comparación entre igual y similar 
JavaScript provee tres operaciones diferentes de comparación: comparación estricta usando ===, comparación floja usando ==, y el método Object.is().

Avanzado

Herencia y la cadena de prototipos
Explicación de la ampliamente incomprendida y sobre-estimada herencia basada en prototipos.
Modo estricto
El modo estricto define que tú no puedas usar ninguna variable antes de inicializarse. Es una variante restringida de ECMAScript5 para un mejor rendimiento y una mejor facilidad para la depuración.
Typed Arrays de JavaScript
Los typed arrays de  JavaScript proveen un mecanismo para acceder a datos puramente binarios.
Control de memoria
El ciclo de vida de la memoria y la recolección de basura en JavaScript.
Modelo de concurrencia y ciclo de eventos
JavaScript tiene un modelo de concurrencia basado en un "ciclo de eventos".

Referencias

Explora la documentación completa de la referencia de JavaScript.

Objetos Estándar
Conoce los objetos estándares prefabricados Array, Boolean, Date, Error, Function, JSON, Math, Number, Object, RegExp, String, Map, Set, WeakMap, WeakSet, y otros.
Expresiones y operadores
Aprende más sobre el comportamiento de los operadores de JavaScript  instanceof, typeof, new, this, la prioridad de los operadores y más.
Sentencias y declaraciones
Aprende do-while, for-in, for-of, try-catch, let, var, const, if-else, switch y más declaraciones de JavaScript y sus palabras claves.
Funciones
Aprende cómo trabajas con las funciones de JavaScript para desarrollar tus aplicaciones.

Herramientas y recursos

Herramientas útiles para escribir y depurar tu código de JavaScript.

Herramientas de desarrollador de Firefox
Scratchpad, Consola Web, JavaScript Profiler, Depurador, y mas.
Shells de JavaScript
Un shell de JavaScript te permite probar pequeños fragmentos de código JavaScript.
TogetherJS
La colaboración hecha fácil. ¡Añadiendo TogetherJS a tu sitio, tus usuarios pueden ayudarse unos a otros en un sitio web en tiempo real!
Stack Overflow
Las preguntas de Stack Overflow categorizadas bajo la etiqueta "JavaScript".
Versiones de JavaScript  y notas de publicaciones
Explora el historial de características de JavaScript y el estatus de su implementación.
JSFiddle
Edita JavaScript, CSS, HTML y obtén resultados en vivo. Usa recursos externos y colabora con tu equipo en tiempo real.
Plunker
Plunker es un comunidad online para la creación, colaboración y compartir tus ideas sobre el desarrollo web. Edita tus archivos JavaScript, CSS, HTML y obtén resultados en vivo y la estructura del archivo.

Join the JavaScript community

Choose your preferred method for joining the discussion:

Etiquetas y colaboradores del documento

Etiquetas: 
Última actualización por: clarii,