### Curso de fundamentos intermedio (continuación del desde cero). Nueva clase cada semana.
#### 🔴 PRÓXIMA CLASE EN DIRECTO: Miércoles 12 de febreto a las 20:00h (España) en [Twitch](https://twitch.tv/mouredev) y [YouTube](https://youtube.com/@mouredev)
#### 🗓️ CONSULTA EL HORARIO POR PAÍS Y CREA UN RECORDATORIO desde [Discord](https://discord.gg/876GQ39x?event=1336827032805576714)
* Clase 1 [29/01/2025] - Funciones avanzadas
* [Vídeo](https://www.twitch.tv/videos/2367024319?t=00h08m45s)
* [Código](./Intermediate/00-advanced-functions.js)
* [Ejericios](./Intermediate/01-advanced-functions-exercises.js)
* Clase 2 [05/02/2025] - Estructuras avanzadas
* [Vídeo](https://www.twitch.tv/videos/2373300186?t=00h15m32s)
* [Código](./Intermediate/02-advanced-structures.js)
* [Ejericios](./Intermediate/03-advanced-structures-exercises.js)
## Clases en vídeo
### Curso de fundamentos desde cero
* [Introducción](https://youtu.be/1glVfFxj8a4)
* [1 - Contexto](https://youtu.be/1glVfFxj8a4?t=174)
* [2 - Historia](https://youtu.be/1glVfFxj8a4?t=322)
* [3 - JavaScript y Java](https://youtu.be/1glVfFxj8a4?t=665)
* [4 - Utilización](https://youtu.be/1glVfFxj8a4?t=931)
* [5 - Especificación ECMAScript](https://youtu.be/1glVfFxj8a4?t=1017)
* [6 - Motor V8](https://youtu.be/1glVfFxj8a4?t=1293)
* [7 - Referencia](https://youtu.be/1glVfFxj8a4?t=1403)
* [8 - Ejercicios prácticos](https://youtu.be/1glVfFxj8a4?t=1621)
* [9 - Versión](https://youtu.be/1glVfFxj8a4?t=1705)
* [10 - Explorador web](https://youtu.be/1glVfFxj8a4?t=1768)
* [11 - Playground](https://youtu.be/1glVfFxj8a4?t=1893)
* [12 - Instalación](https://youtu.be/1glVfFxj8a4?t=1988)
* [13 - Editor de código](https://youtu.be/1glVfFxj8a4?t=2256)
* [14 - Buenas prácticas](https://youtu.be/1glVfFxj8a4?t=2311)
* [15 - Hola mundo](https://youtu.be/1glVfFxj8a4?t=2390) | [Código](./Basic/00-helloworld.js)
* [16 - Variables](https://youtu.be/1glVfFxj8a4?t=3049) | [Código](./Basic/01-variables.js)
* [17 - Tipos de datos](https://youtu.be/1glVfFxj8a4?t=3599) | [Código](./Basic/02-datatypes.js)
* [18 - Ejercicios: primeros pasos](https://youtu.be/1glVfFxj8a4?t=4733) | [Ejercicios](./Basic/03-beginner-exercises.js)
* [19 - Operadores](https://youtu.be/1glVfFxj8a4?t=4937) | [Código](./Basic/04-operators.js)
* [20 - Ejercicios: Operadores](https://youtu.be/1glVfFxj8a4?t=6458) | [Ejercicios](./Basic/05-operators-exercises.js)
* [21 - Strings](https://youtu.be/1glVfFxj8a4?t=6565) | [Código](./Basic/06-strings.js)
* [22 - Ejercicios: Strings](https://youtu.be/1glVfFxj8a4?t=7226) | [Ejercicios](./Basic/07-strings-exercises.js)
* [23 - Condicionales](https://youtu.be/1glVfFxj8a4?t=7277) | [Código](./Basic/08-conditionals.js)
* [24 - Ejercicios: Condicionales](https://youtu.be/1glVfFxj8a4?t=8652) | [Ejercicios](./Basic/09-conditionals-exercises.js)
* [25 - Arrays](https://youtu.be/1glVfFxj8a4?t=8741) | [Código](./Basic/10-array.js)
* [26 - Sets](https://youtu.be/1glVfFxj8a4?t=9952) | [Código](./Basic/11-set.js)
* [27 - Maps](https://youtu.be/1glVfFxj8a4?t=10755) | [Código](./Basic/12-map.js)
* [28 - Ejercicios: Estructuras](https://youtu.be/1glVfFxj8a4?t=11451) | [Ejercicios](./Basic/13-structures-exercises.js)
* [29 - Bucles](https://youtu.be/1glVfFxj8a4?t=11575) | [Código](./Basic/14-loops.js)
* [30 - Ejercicios: Bucles](https://youtu.be/1glVfFxj8a4?t=12732) | [Ejercicios](./Basic/15-loops-exercises.js)
* [31 - Funciones](https://youtu.be/1glVfFxj8a4?t=12829) | [Código](./Basic/16-functions.js)
* [32 - Ejercicios: Funciones](https://youtu.be/1glVfFxj8a4?t=14146) | [Ejercicios](./Basic/17-functions-exercises.js)
* [33 - Objetos](https://youtu.be/1glVfFxj8a4?t=14229) | [Código](./Basic/18-objects.js)
* [34 - Ejercicios: Objetos](https://youtu.be/1glVfFxj8a4?t=15675) | [Ejercicios](./Basic/19-objects-exercises.js)
* [35 - Desestructuración y propagación](https://youtu.be/1glVfFxj8a4?t=15747) | [Código](./Basic/20-destructuring-spreading.js)
* [36 - Ejercicios: Desestructuración y propagación](https://youtu.be/1glVfFxj8a4?t=16802) | [Ejercicios](./Basic/21-destructuring-spreading-exercises.js)
* [37 - Clases](https://youtu.be/1glVfFxj8a4?t=16864) | [Código](./Basic/22-classes.js)
* [38 - Herencia de clases](https://youtu.be/1glVfFxj8a4?t=17999) | [Código](./Basic/22-classes.js)
* [39 - Ejercicios: Clases](https://youtu.be/1glVfFxj8a4?t=18630) | [Ejercicios](./Basic/23-classes-exercises.js)
* [40 - Manejo de errores](https://youtu.be/1glVfFxj8a4?t=18751) | [Código](./Basic/24-error-handling.js)
* [41 - Ejercicios: Manejo de errores](https://youtu.be/1glVfFxj8a4?t=20392) | [Ejercicios](./Basic/25-error-handling-exercises.js)
* [42 - Console](https://youtu.be/1glVfFxj8a4?t=20444) | [Código](./Basic/26-console-methods.js)
* [43 - Ejercicios: Console](https://youtu.be/1glVfFxj8a4?t=21421) | [Ejercicios](./Basic/27-console-methods-exercises.js)
* [44 - Módulos](https://youtu.be/1glVfFxj8a4?t=21480) | [Código exportación](./Basic/28-export-modules.js) | [Código importación](./Basic/29-import-modules.js) | [Código externos](./Basic/30-import-external-modules.cjs)
* [45 - Ejercicios: Módulos](https://youtu.be/1glVfFxj8a4?t=22720) | [Ejercicios](./Basic/31-modules-exercises.js) | [package.json](./Basic/package.json)
* [Despedida](https://youtu.be/1glVfFxj8a4?t=22776)
## Enlaces de interés
* Impacto: [Stack Overflow](https://survey.stackoverflow.co/2023/#most-popular-technologies-language) | [GitHub](https://github.blog/2023-11-08-the-state-of-open-source-and-ai/) | [Índice TIOBE](https://www.tiobe.com/tiobe-index/) | [Google Trends](https://trends.google.es/trends/explore?cat=5&date=today%205-y&q=%2Fm%2F02p97,%2Fm%2F05z1_,%2Fm%2F07sbkfb&hl=es)
* [Historia](https://es.wikipedia.org/wiki/JavaScript)
* [Especificación ECMAScript](https://tc39.es/ecma262/)
* [Documentación Mozilla](https://developer.mozilla.org/es/docs/Web/JavaScript)
* [Documentación W3Schools](https://www.w3schools.com/js/)
* [Documentación JS Info](https://es.javascript.info/)
* [Libro Eloquent JavaScript](https://eloquentjavascript.net/)
* [Playground](https://runjs.app/play)
* [Node.js](https://nodejs.org)
* Exploradores: [Chrome](https://www.google.com/intl/es_es/chrome/) | [Brave](https://brave.com/download/)
* [Visual Studio Code](https://code.visualstudio.com/)
* [Guía de estilo](https://google.github.io/styleguide/jsguide.html)
## Únete al campus de programación de la comunidad

#### Te presento [mouredev pro](https://mouredev.pro), mi proyecto más importante para ayudarte a estudiar programación y desarrollo de software de manera diferente.
> **¿Buscas un extra?** Aquí encontrarás este y otros cursos editados por lecciones individuales, para avanzar a tu ritmo y guardar el progreso. También dispondrás de ejercicios y correcciones, test para validar tus conocimientos, examen y certificado público de finalización, soporte, foro de estudiantes, reunionnes grupales, cursos exclusivos y mucho más.
>
> Entra en **[mouredev.pro](https://mouredev.pro)** y utiliza el cupón **"JAVASCRIPT"** con un 10% de descuento en tu primera suscripción.
## Preguntas frecuentes
#### ¿Debo tener conocimientos previos?
Mi idea es que el curso sea desde cero y para principiantes. Pensado para una persona que comienza por primera vez a programar. Es un curso de fundamentos, donde nos centraremos en aprender las bases del lenguaje con JavaScript puro (Vanilla JS). Esto no es un curso para aprender a desarrollar proyectos. Vamos a empezar desde el principio.
Si la acogida de la comunidad es buena, seguiré creando cursos más avanzados.
#### ¿Este curso va a continuar?
Sí, actualmente estoy desarrollando la parte Intermedia. Cada semana una nueva clase en directo.
#### ¿Este curso se va a subir a YouTube?
Sí, una vez finalizado lo editaré y subiré al igual que con la parte Desde Cero. Por el momento podrás encontrar cada una de las clases de manera individual en este repositorio.
#### ¿Existe algún lugar donde consultar dudas?
He creado un canal llamado "JavaScript" en el [servidor de Discord](https://discord.gg/mouredev) de la comunidad. Allí puedes consultar dudas y ayudar al resto de miembros. Así nos beneficiamos tod@s.
#### ¿Cómo puedo practicar?
A medida que avance el curso, crearé ficheros de ejercicios para poner en práctica lo aprendido. También puedes realizar los ejercicios de mi web [retosdeprogramacion.com](https://retosdeprogramacion.com).
##  Hola, mi nombre es Brais Moure.
### Freelance full-stack iOS & Android engineer
[](https://youtube.com/mouredevapps?sub_confirmation=1)
[](https://twitch.com/mouredev)
[](https://mouredev.com/discord)
[](https://twitter.com/mouredev)


Soy ingeniero de software desde 2010. Desde 2018 combino mi trabajo desarrollando Apps con la creación de contenido formativo sobre programación y tecnología en diferentes redes sociales como **[@mouredev](https://moure.dev)**.
Si quieres unirte a nuestra comunidad de desarrollo, aprender programación, mejorar tus habilidades y ayudar a la continuidad del proyecto, puedes encontrarnos en:
[](https://twitch.tv/mouredev)
[](https://mouredev.com/discord) [](https://mouredev.pro)
[](https://moure.dev) [](https://github.com/mouredev)
# cursoJS