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, semantica y usos.
Tutoriales
Aprende como programar en JavaScript con guias y tutoriales.
Para completos novatos
Adéntrate en el nuestro tema de Aprendizaje de JavaScript si quieres aprender JavaScript pero no tienes experiencia previa en JavaScript o programando. Todos los módulos disponibles que hay son los siguientes:
- Primeros pasos en JavaScript
- Responde algunas preguntas fundamentales como "¿Qué es JavaScript?", "¿Como luce?", y "¿Que puedo hacer?", junto con las discusiones de las características principales de JavaScript como variables, strings, números, y arreglos.
- Bloques de construcción de JavaScript
- Continua nuestra cobertura de las características principales de JavaScript, pasando nuestra atención a tipos de bloques de código comúnmente encontrados como declaraciones condicionales, ciclos, funciones y eventos.
- Presentando a los Objetos en JavaScript
- La naturales orientada a objetos de JavaScript es importante entenderla si quieres llegar mas lejos en tu conocimiento del lenguaje y escribir código mas eficiente, por esto hemos proporcionado este modulo para ayudarte.
Guia de JavaScript
- Guía de JavaScript
- Una guia mucho mas detallada acerca del lenguaje JavaScript, dirigida a esos con experiencia previa programando ya sea en JavaScript o en otro lenguaje.
Intermediario
- APIs web del lado del cliente
- Cuando escribimos 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 modulo exploraremos que son las APIs, y como usar algunas de las mas comunes APIs con las cuales te encontraras 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étodoObject.is().
Avanzado
- Herencia y la cadena de prototipos
- Explicación del ampliamente incomprendido y la sobre-estimada herencia basada en prototipos.
- Modo estricto
- El modo estricto define que tú no puedes 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 mas sobre el comportamiento de los operadores de JavaScript
instanceof,typeof,new,this, la prioridad de los operadores, y más. - Sentencias y declaraciones
- Aprende como
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 como 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
- IRC: #js (learn more)
- ES discuss: esdiscuss.org
- SpiderMonkey: Project page
- Twitter: @SpiderMonkeyJS

