From 093c46fcc5e9cc93e7e105a13ace0872a1d0c751 Mon Sep 17 00:00:00 2001 From: CaroAmarillo Date: Sun, 19 May 2019 20:29:39 -0300 Subject: [PATCH 1/8] refactor --- README.md | 63 +++------ ejercicios/conceptuales/01.md | 4 +- ejercicios/conceptuales/02.md | 166 +++++----------------- ejercicios/conceptuales/03.md | 94 +++++++++---- ejercicios/conceptuales/04.md | 228 ++++++++++++++++++++++-------- ejercicios/conceptuales/05.md | 230 ++++++++++++------------------- ejercicios/conceptuales/06.md | 146 +++----------------- ejercicios/conceptuales/07.md | 29 ---- ejercicios/conceptuales/08.md | 207 ---------------------------- ejercicios/conceptuales/09.md | 183 ------------------------ ejercicios/conceptuales/10.md | 29 ---- ejercicios/conceptuales/11.md | 109 --------------- respuestas/07.js | 46 ------- respuestas/08.js | 173 ----------------------- respuestas/09.js | 51 ------- respuestas/10.js | 37 ----- respuestas/11.js | 43 ------ trabajo-final/README.md | 18 --- trabajo-final/ejercicios/ej01.md | 19 --- trabajo-final/ejercicios/ej02.md | 46 ------- trabajo-final/ejercicios/ej03.md | 50 ------- trabajo-final/ejercicios/ej04.md | 41 ------ trabajo-final/ejercicios/ej05.md | 24 ---- trabajo-final/ejercicios/ej06.md | 25 ---- trabajo-final/ejercicios/ej07.md | 37 ----- trabajo-final/ejercicios/ej08.md | 52 ------- trabajo-final/ejercicios/ej09.md | 16 --- trabajo-final/ejercicios/ej10.md | 26 ---- trabajo-final/ejercicios/ej11.md | 23 ---- trabajo-final/ejercicios/ej12.md | 33 ----- trabajo-final/ejercicios/ej13.md | 65 --------- trabajo-final/ejercicios/ej14.md | 27 ---- trabajo-final/ejercicios/ej15.md | 65 --------- trabajo-final/ejercicios/ej16.md | 29 ---- trabajo-final/ejercicios/ej17.md | 18 --- trabajo-final/ejercicios/ej18.md | 9 -- trabajo-final/ejercicios/ej19.md | 9 -- trabajo-final/ejercicios/ej20.md | 30 ---- trabajo-final/ejercicios/ej21.md | 5 - trabajo-final/ejercicios/ej22.md | 21 --- trabajo-final/ejercicios/ej23.md | 65 --------- trabajo-final/ejercicios/ej24.md | 14 -- trabajo-final/resolucion/ej01.js | 6 - trabajo-final/resolucion/ej02.js | 16 --- trabajo-final/resolucion/ej03.js | 25 ---- trabajo-final/resolucion/ej04.js | 27 ---- trabajo-final/resolucion/ej05.js | 19 --- trabajo-final/resolucion/ej06.js | 18 --- trabajo-final/resolucion/ej07.js | 30 ---- trabajo-final/resolucion/ej08.js | 40 ------ trabajo-final/resolucion/ej09.js | 3 - trabajo-final/resolucion/ej10.js | 12 -- trabajo-final/resolucion/ej11.js | 18 --- trabajo-final/resolucion/ej12.js | 27 ---- trabajo-final/resolucion/ej13.js | 46 ------- trabajo-final/resolucion/ej14.js | 17 --- trabajo-final/resolucion/ej15.js | 44 ------ trabajo-final/resolucion/ej16.js | 17 --- trabajo-final/resolucion/ej17.js | 22 --- trabajo-final/resolucion/ej18.js | 14 -- trabajo-final/resolucion/ej19.js | 14 -- trabajo-final/resolucion/ej20.js | 31 ----- trabajo-final/resolucion/ej21.js | 31 ----- trabajo-final/resolucion/ej22.js | 19 --- trabajo-final/resolucion/ej23.js | 53 ------- trabajo-final/resolucion/ej24.js | 12 -- 66 files changed, 394 insertions(+), 2772 deletions(-) delete mode 100644 ejercicios/conceptuales/07.md delete mode 100644 ejercicios/conceptuales/08.md delete mode 100644 ejercicios/conceptuales/09.md delete mode 100644 ejercicios/conceptuales/10.md delete mode 100644 ejercicios/conceptuales/11.md delete mode 100644 respuestas/07.js delete mode 100644 respuestas/08.js delete mode 100644 respuestas/09.js delete mode 100644 respuestas/10.js delete mode 100644 respuestas/11.js delete mode 100755 trabajo-final/README.md delete mode 100755 trabajo-final/ejercicios/ej01.md delete mode 100755 trabajo-final/ejercicios/ej02.md delete mode 100755 trabajo-final/ejercicios/ej03.md delete mode 100755 trabajo-final/ejercicios/ej04.md delete mode 100755 trabajo-final/ejercicios/ej05.md delete mode 100755 trabajo-final/ejercicios/ej06.md delete mode 100755 trabajo-final/ejercicios/ej07.md delete mode 100755 trabajo-final/ejercicios/ej08.md delete mode 100755 trabajo-final/ejercicios/ej09.md delete mode 100755 trabajo-final/ejercicios/ej10.md delete mode 100755 trabajo-final/ejercicios/ej11.md delete mode 100755 trabajo-final/ejercicios/ej12.md delete mode 100755 trabajo-final/ejercicios/ej13.md delete mode 100755 trabajo-final/ejercicios/ej14.md delete mode 100755 trabajo-final/ejercicios/ej15.md delete mode 100755 trabajo-final/ejercicios/ej16.md delete mode 100755 trabajo-final/ejercicios/ej17.md delete mode 100755 trabajo-final/ejercicios/ej18.md delete mode 100755 trabajo-final/ejercicios/ej19.md delete mode 100755 trabajo-final/ejercicios/ej20.md delete mode 100755 trabajo-final/ejercicios/ej21.md delete mode 100755 trabajo-final/ejercicios/ej22.md delete mode 100755 trabajo-final/ejercicios/ej23.md delete mode 100755 trabajo-final/ejercicios/ej24.md delete mode 100755 trabajo-final/resolucion/ej01.js delete mode 100755 trabajo-final/resolucion/ej02.js delete mode 100755 trabajo-final/resolucion/ej03.js delete mode 100755 trabajo-final/resolucion/ej04.js delete mode 100755 trabajo-final/resolucion/ej05.js delete mode 100755 trabajo-final/resolucion/ej06.js delete mode 100755 trabajo-final/resolucion/ej07.js delete mode 100755 trabajo-final/resolucion/ej08.js delete mode 100755 trabajo-final/resolucion/ej09.js delete mode 100755 trabajo-final/resolucion/ej10.js delete mode 100755 trabajo-final/resolucion/ej11.js delete mode 100755 trabajo-final/resolucion/ej12.js delete mode 100755 trabajo-final/resolucion/ej13.js delete mode 100755 trabajo-final/resolucion/ej14.js delete mode 100755 trabajo-final/resolucion/ej15.js delete mode 100755 trabajo-final/resolucion/ej16.js delete mode 100755 trabajo-final/resolucion/ej17.js delete mode 100755 trabajo-final/resolucion/ej18.js delete mode 100755 trabajo-final/resolucion/ej19.js delete mode 100755 trabajo-final/resolucion/ej20.js delete mode 100755 trabajo-final/resolucion/ej21.js delete mode 100755 trabajo-final/resolucion/ej22.js delete mode 100755 trabajo-final/resolucion/ej23.js delete mode 100755 trabajo-final/resolucion/ej24.js diff --git a/README.md b/README.md index 05ae91b..5f7861b 100644 --- a/README.md +++ b/README.md @@ -2,59 +2,38 @@ Este workshop es una introducción a la programación usando JavaScript. -[Empezar con el workshop](/ejercicios/conceptuales/01.md) +## Stackblitz +> Agregar guía de como usar Stackblitz -## Requisitos +## Introducción +> Motivacion de por qué programar, reducir las partes que consideremos innecesarias. -* [Node.js](https://nodejs.org/en/) -* Uno de estos editores de texto - * [Visual Studio Code](https://code.visualstudio.com/) - * [Atom](https://atom.io/) - * [Sublime Text](https://www.sublimetext.com/) - * [Notepad++](https://notepad-plus-plus.org/) +>Qué se puede programar -## Introducción -1. ¿Qué es un lenguaje de programación? - * Lenguaje que por medio de semántica y estructura permite darle instrucciones a una computadora. - * Existen muchos lenguajes y casos de uso. -1. ¿Qué es JavaScript? - * Es un lenguaje de programación interpretado y multiparadigma. - * Interpretado quiere decir que en tiempo de ejecución, las instrucciones se transforman a código máquina para ser ejecutado, a diferencia de los lenguajes compilados que requieren un paso extra que es compilar el programa y generar un archivo ejecutable. - * Hay muchas maneras de programar (Funcional, Orientado a objetos). - * Creado por Brendan Eich, nació en 1995. - * El propósito inicial fue hacer páginas web más dinámicas. - * Fue evolucionando y hoy en día hasta lo podemos usar en servidores y otros casos de uso para los que nunca fue creado. -1. ¿Por qué JavaScript? - * Hoy en día, JavaScript tiene muchísimos casos de uso diferentes, desde manipular robots u otro tipos de hardware, hacer gráficos complejos, proyectos en realidad virtual y escribir aplicaciones para teléfonos y navegadores. - * Node.js se presenta en 2009. -1. Escribir y ejecutar nuestro primer programa en el navegador y en la consola. +[Empezar con el workshop](/ejercicios/conceptuales/01.md) + ## Ejercicios -1. [console.log](/ejercicios/conceptuales/01.md) -1. [Errores Comunes](/ejercicios/conceptuales/02.md) -1. [Números, Cadenas de Texto y Booleanos](/ejercicios/conceptuales/03.md) -1. [Variables](/ejercicios/conceptuales/04.md) -1. [Operadores](/ejercicios/conceptuales/05.md) -1. [Condicionales](/ejercicios/conceptuales/06.md) -1. [Parcialito 🙊](/ejercicios/conceptuales/07.md) -1. [Arrays](/ejercicios/conceptuales/08.md) -1. [Parámetros de Ejecución en una Aplicación Node.js](/ejercicios/conceptuales/09.md) -1. [Parcialito 2 🙊](/ejercicios/conceptuales/10.md) -1. [Objetos](/ejercicios/conceptuales/11.md) -1. [Trabajo Final 🙊🙊🙊](/trabajo-final/README.md) +1. [console.log / alert (?)](/ejercicios/conceptuales/01.md) +2. [Números, Cadenas de Texto y Booleanos](/ejercicios/conceptuales/02.md) +3. [Variables](/ejercicios/conceptuales/03.md) +4. [Operadores](/ejercicios/conceptuales/04.md) +5. [Condicionales](/ejercicios/conceptuales/05.md) +6. [Parcialito 🙊](/ejercicios/conceptuales/06.md) -### Ejercicios Botiquín Virtual +### Ejercicios Botiquín Virtual [ **WIP** ] 1. [Variables](/ejercicios/botiquin/1_variables.md) -1. [Operadores y Expresiones](/ejercicios/botiquin/2_operadores_expresiones.md) -1. [Arrays](/ejercicios/botiquin/3_arrays.md) -1. [Estructuras de control](/ejercicios/botiquin/4_estructuras_control.md) -1. [Objetos](/ejercicios/botiquin/5_objetos.md) -1. [Funciones](/ejercicios/botiquin/6_funciones.md) +2. [Operadores y Expresiones](/ejercicios/botiquin/2_operadores_expresiones.md) +3. [Arrays](/ejercicios/botiquin/3_arrays.md) +4. [Estructuras de control](/ejercicios/botiquin/4_estructuras_control.md) +5. [Objetos](/ejercicios/botiquin/5_objetos.md) +6. [Funciones](/ejercicios/botiquin/6_funciones.md) 7. [Aplicación Web](/ejercicios/botiquin/7_aplicacion_web.md) -## Links extras para seguir aprendiendo +## Links extras para seguir aprendiendo [ **WIP** ] +> Links extras ver los que estan agregar mas, mencionar comunidades. etc 1. [JavaScript para gatos](https://jsparagatos.com/) 1. [Free Code Camp BA - Introducción a JavaScript](https://github.com/nhsz/intro-js) diff --git a/ejercicios/conceptuales/01.md b/ejercicios/conceptuales/01.md index 9e08ecb..9384379 100644 --- a/ejercicios/conceptuales/01.md +++ b/ejercicios/conceptuales/01.md @@ -1,3 +1,5 @@ +> Definición más simple, reemplazar por alert + # console.log JavaScript nos provee de un **_objeto global_** llamado `console` que nos va a permitir mostrar información en la terminal. Este objeto `console` dispone de ciertos **_métodos_** que podemos usar en cualquier momento dentro de nuestros programas. El más conocido es `log`. @@ -27,4 +29,4 @@ console.log(101); [Respuestas](/respuestas/01.js) -[Continuar con Errores Comunes](/ejercicios/conceptuales/02.md) +[Números, Cadenas de Texto y Booleanos](/ejercicios/conceptuales/02.md) diff --git a/ejercicios/conceptuales/02.md b/ejercicios/conceptuales/02.md index eca8083..9790ff7 100644 --- a/ejercicios/conceptuales/02.md +++ b/ejercicios/conceptuales/02.md @@ -1,161 +1,57 @@ - # :heavy_exclamation_mark: Errores comunes +# Números, Cadenas de Texto y Booleanos -Como todos somos humanos y los humanos solemos cometer errores por lo que hay que dedicarnos un tiempo para poder entender cuando algo no salió como esperábamos. +En JavaScript existen muchos tipos de datos, en este momento vamos a focalizarnos en 3 de ellos: **_números_**, **_cadenas de caracteres_** y **_booleanos_**. -Node.js tiende a brindar información útil sobre cómo mitigar los errores que podamos llegar a tener en el código. - -## La consola es tu amiga para encontrar errores - -Recordando lo que vimos en la lección anterior, tenemos el siguiente código: - -```javascript -console.log(1, 2, 3, 4, 5); -``` -Nos devuelve exitosamente: -```javascript -1 2 3 4 5 -``` -Ahora supongamos nos olvidamos de agregar una "," entre alguno de los números. Por ejemplo: -```javascript -console.log(1, 2, 3 4, 5); -``` -Y de repende ¡PUM! tenemos al menos trece lineas de información sobre algo que pasó: - -```javascript -/home/ale/workspace/js101/index.js:1 -(function (exports, require, module, __filename, __dirname) { console.log(1, 2, 3 4, 5); - ^ - -SyntaxError: missing ) after argument list - at new Script (vm.js:51:7) - at createScript (vm.js:138:10) - at Object.runInThisContext (vm.js:199:10) - at Module._compile (module.js:626:28) - at Object.Module._extensions..js (module.js:673:10) - at Module.load (module.js:575:32) - at tryModuleLoad (module.js:515:12) - at Function.Module._load (module.js:507:3) - at Function.Module.runMain (module.js:703:10) - at startup (bootstrap_node.js:193:16) -``` -Al principio ver esto sin comprender lo que Node.js nos está queriendo decir puede resultar un poco abrumador, es por eso que haremos un analisis, parte por parte. - -## Desglosamos la información de los errores -En la primera línea, Node.js nos avisa en qué archivo ocurrió el problema y hasta en qué linea: -```javascript -/home/ale/workspace/js101/index.js:1 -``` -Hubo un problema en el archivo /home/ale/workspace/js101/index.js en la línea 1. - -```javascript -(function (exports, require, module, __filename, __dirname) { console.log(1, 2, 3 4, 5); - ^ -``` -Acá hay algo interesante; fíjate en el acento circunflejo `^` y cómo nos apunta al lugar exacto donde omitimos la coma. - -Ahora, seguramente te estarás preguntando qué es esto: -```javascript -(function (exports, require, module, __filename, __dirname) { -``` -Recordemos que Node.js es un entorno de ejecución de Javascript. Por lo que **nuestro código Javascript será ejecutado junto a más código Javascript de Node.js** en un ambiente contenido, principalmente por el motor V8. - -Por lo que si ves código que desconoces (y por lo general con nombres que empiecen con _ o __), **ignóralo en primer instancia. Asume que el código de Node.js funciona y enfócate en ver qué parte de tu código desencadenó el error.** - -Si te interesa saber más sobre cómo funciona Node.js por dentro puedes [leer este artículo](https://blog.ghaiklor.com/how-nodejs-works-bfe09efc80ca). - -## Los errores en la consola indican qué se rompió, no cuál fue la causa +Los **_números_** (`0`, `1`, `2`, `-100`, `3000` y todos los que se te ocurran) son valores que nos van a permitir representar información numérica en nuestros programas. ```javascript -SyntaxError: missing ) after argument list +456; // Hola, soy un número en JavaScript ``` -Si leemos esto, pareciera que nos faltó un paréntesis en nuestro código, cuando en realidad nos faltó una coma. - -Para saber por qué pasa esto, tenemos que saber que en todos los lenguajes formales, en particular los de programación, existe alguna especificación de cómo se debería leer y escribir el lenguaje. -Ahora, parte del trabajo que hace Node.js es leer tu código línea a línea, caracter por caracter, verificando que lo que hayas escrito cumpla con las reglas del lenguaje con cada caracter que ingresas. +Los números te van a servir para representar información cuantitativa (años, temperatura, stock, segundos, etc.) y hacer operaciones matemáticas tales como sumas, restas y multiplicaciones (sólo por mencionar algunas). -Al mecanismo que se ocupa de verificar estos errores de sintaxis, se lo conoce como parser. +Las **_cadenas de caracteres_**, también conocidas como `string`, son valores que vamos a representar por medio de un conjunto de caracteres encerrados entre comillas simples o dobles. -De manera simplificada, Node.js analiza tu código en busca de errores de sintáxis de la siguiente manera: ```javascript -c -``` -Parser: "¿Es válido en Javascript escribir algo que empieza con `c`? Si, seguí." -```javascript -co -``` -Parser: "¿Es válido en Javascript escribir algo que empieza con `co`? Si, seguí." -```javascript -con -``` -Parser: "¿Es válido en Javascript escribir algo que empieza con `con`? Si, seguí." +'¡Mira mamá, soy una cadena de caracteres!'; // comillas simples +"Hijo, ¿hiciste la tarea?"; // comillas dobles -... y así sucesivamente hasta llegar a: -```javascript -console.log(1, 2, 3 -``` -Parser: "¿Es válido en Javascript escribir algo que empieza con `console.log(1, 2, 3`? Si, seguí." -```javascript -console.log(1, 2, 3 4 +// Lo importante es no mezclar las comillas, +// porque sino JavaScript se va a enojar 😕 +'en esta línea de código JavaScript va a dar error 😭"; ``` -Parser: "¿Es válido en Javascript escribir algo que empieza con `console.log(1, 2, 3 4`? -**No.** Mirá, **entiendo que no me quieras dar una coma, pero si te vas [del contexto actual] sin un ~~adiós~~ paréntesis, se terminó nuesta ~~relación~~ ejecución**." -En otras palabras, el parser sabe que cuando abrís un paréntesis, lo tenés que cerrar. Cuando vió que no se agregó una `,` después del `3` no te dijo nada porque pensó que terminaste de listar los parámetros de console.log e ibas a agregar un `)`. Cuando vió que había un `4`, se preguntó "¿Dónde está mi paréntesis?" y lanzó el error de sintáxis. +Los **_booleanos_** representan valores de lógica binaria. Esto quiere decir que solo pueden representar 1 de 2 valores posibles: `true` (verdadero) o `false` (falso). -Es importante notar como el parser lanza el primer error que encuentre, ya que no tiene mucho sentido seguir parseando el código con errores, si ya sabemos que va a fallar de todos modos. - -## Stack Trace ```javascript - at new Script (vm.js:51:7) - at createScript (vm.js:138:10) - at Object.runInThisContext (vm.js:199:10) - at Module._compile (module.js:626:28) - at Object.Module._extensions..js (module.js:673:10) - at Module.load (module.js:575:32) - at tryModuleLoad (module.js:515:12) - at Function.Module._load (module.js:507:3) - at Function.Module.runMain (module.js:703:10) - at startup (bootstrap_node.js:193:16) -``` -Estas lineas son las que más causan miedo, pero son inofensivas. - -Lo que nos dicen es el orden de sucesos que desencadenó el error. Los eventos más recientes están arriba, y los primeros eventos más abajo. +// Para indicar que queremos usar el valor verdadero escribimos... +true; -En nuestro caso se empezó a ejecutar boostrap_node.js en la línea 193, columna 16, luego se ejecutó el archivo module.js en la línea 703 columna 10, y así sucesivamente. - -Por lo general toma la misma sugerencia que para código que no reconozcas, son de Node.js y él (¿o ella?) sabe como resolverlo, por lo que sólo deberías enfocarte, en principio, en los archivos que reconozcas que son tuyos, que se verían algo así: -```javascript -TypeError: console.lo is not a function - at Object. (/home/ale/workspace/js101/index.js:1:71) +// Para indicar que algo es falso escribimos... +false; ``` +## Tips -## Otros errores comunes +* Puedo mostrar más de 1 tipo de valor a la vez por la terminal separándolos por coma. Ejemplo: -Ahora que vimos la estructura de cómo interpretar un error, veamos algunos casos rápidos y concretos: -```javascript -ReferenceError: consol is not defined -``` -No existe `consol`. Es un error común cuando se comente un error al escribir el nombre de una variable u objeto que sí existe. + ```javascript + console.log(1, 'Hola', true, 'Soy una cadena de caracteres', 2); + ``` -Si el nombre está definitivamente bien escrito y tienes este error, significa que no existe una variable u objeto con ese nombre. -```javascript -TypeError: console.lo is not a function -``` -Muy probablemente sea alguna variable u objeto mal escrito, al igual que el caso anterior. + Esto es muy útil en los casos que quieras mostrar información descriptiva al valor que estás enviando a la terminal. -Si no lo es, es porque nuestro objeto no sabe hacer lo que se le pidió. El objeto console 'sabe' hacer log pero no 'sabe' hacer `lo`. -```javascript -SyntaxError: Unexpected token , -``` -Hay un caracter (en este caso `,` ) que no respeta la sintáxis del lenguaje. En otras palabras, ese caracter en ese contexto, no es Javascript válido. + ```javascript + console.log('Mi edad es', 27); + ``` ## Ejercicios -1. Escribe `consol.log(101);` para ver qué error genera. -1. Escribe `console.log(,);` para ver qué error genera. -1. Escribe `console.log(js);` para ver qué error genera. +1. Usando un número, mostrar tu edad por la terminal. +1. Usando una cadena de caracteres, mostrar tu nombre por la terminal. +1. Usando un booleano, mostrar el valor verdadero por la terminal. +1. Usando un solo `console.log`, mostrar los valores `1`, `200`, `'Genial'`, `false`, `true`. +[Respuestas](/respuestas/02.js) -[Continuar con Números, Cadenas de Caracteres y Booleanos](/ejercicios/conceptuales/03.md) +[Continuar con Variables](/ejercicios/conceptuales/03.md) diff --git a/ejercicios/conceptuales/03.md b/ejercicios/conceptuales/03.md index 822ef18..282a735 100644 --- a/ejercicios/conceptuales/03.md +++ b/ejercicios/conceptuales/03.md @@ -1,57 +1,91 @@ -# Números, Cadenas de Texto y Booleanos +> explicar const-let mencionando var dejando de lado scopes -En JavaScript existen muchos tipos de datos, en este momento vamos a focalizarnos en 3 de ellos: **_números_**, **_cadenas de caracteres_** y **_booleanos_**. +# Variables -Los **_números_** (`0`, `1`, `2`, `-100`, `3000` y todos los que se te ocurran) son valores que nos van a permitir representar información numérica en nuestros programas. +Una variable es una referencia a un valor (Suena difícil, ¿no? 🤔. Pero tranqui, no lo es). + +Pensemos a una variable como si fuera una caja. A esta caja le vamos a poner un nombre que nos va a permitir acceder a ella cuando lo necesitemos. + +Para decirle a JavaScript que vamos a declarar una variable, lo hacemos escribiendo la palabra `var`: ```javascript -456; // Hola, soy un número en JavaScript +// Oye, JavaScript, necesito que crees una cajita llamada `miNumeroFavorito` +var miNumeroFavorito; ``` -Los números te van a servir para representar información cuantitativa (años, temperatura, stock, segundos, etc.) y hacer operaciones matemáticas tales como sumas, restas y multiplicaciones (sólo por mencionar algunas). +> A esto se lo conoce como **_declarar_** una variable. -Las **_cadenas de caracteres_**, también conocidas como `string`, son valores que vamos a representar por medio de un conjunto de caracteres encerrados entre comillas simples o dobles. +Así como los valores, las variables pueden ser mostradas en la terminal usando `console.log`. Veamos que valor tiene nuestra variable `miNumeroFavorito`. ```javascript -'¡Mira mamá, soy una cadena de caracteres!'; // comillas simples -"Hijo, ¿hiciste la tarea?"; // comillas dobles +// Declaro una variable llamada `miNumeroFavorito` +var miNumeroFavorito; -// Lo importante es no mezclar las comillas, -// porque sino JavaScript se va a enojar 😕 -'en esta línea de código JavaScript va a dar error 😭"; +// La muestro en la terminal. Deberías ver `undefined` +console.log(miNumeroFavorito); ``` -Los **_booleanos_** representan valores de lógica binaria. Esto quiere decir que solo pueden representar 1 de 2 valores posibles: `true` (verdadero) o `false` (falso). +## `undefined`: mi variable todavía no tiene valor + +`undefined` es el valor que JavaScript le pone por defecto a las variables. ¿Te acordás cuando al principio de esta explicación te contamos que una variable es una referencia a un valor? Bueno, como no le dijimos a JavaScript que valor poner dentro de nuesta caja, él puso uno por nosotros. Ese valor es `undefined`. + +> `undefined` es un tipo de dato en JavaScript. + +Para poner un valor dentro de nuestra caja, usamos el **_operador de asignación_** que se escribe con el signo `=` (igual). ```javascript -// Para indicar que queremos usar el valor verdadero escribimos... -true; +// Declaro una variable llamada `miNumeroFavorito` +var miNumeroFavorito; -// Para indicar que algo es falso escribimos... -false; +// Deberías ver `undefined` porque todavía no le pusimos ningún valor +console.log(miNumeroFavorito); + +// Asigno el número 123 a mi variable +miNumeroFavorito = 123; + +// Muestro su valor por la terminal. Deberías ver 123 +console.log(miNumeroFavorito); ``` -## Tips +> A esto se lo conoce como **_asignar_** una variable + +A una variable le podemos asignar el valor que más nos guste: un número, una cadena de caracteres o un booleano (los únicos tipos de datos que conocemos por el momento). -* Puedo mostrar más de 1 tipo de valor a la vez por la terminal separándolos por coma. Ejemplo: +Tanto la declaración como la asignación, la podemos hacer al mismo tiempo, aunque conceptualmente sean 2 instrucciones separadas. - ```javascript - console.log(1, 'Hola', true, 'Soy una cadena de caracteres', 2); - ``` +```javascript +// Declaro la variable `miColorFavorito` +// Le asigno 'Amarillo patito' como valor +var miColorFavorito = 'Amarillo patito'; + +// Deberías ver 'Amarillo patito' en la terminal +console.log(miColorFavorito); +``` - Esto es muy útil en los casos que quieras mostrar información descriptiva al valor que estás enviando a la terminal. +Nos queda un detalle más por explorar. Cambiar el valor de una variable (Para hacerle honor a su nombre 😂). Podemos cambiar el valor de una variable en cualquier momento y no necesariamente por el mismo tipo de dato. Una variable puede valer el número `2017` en un momento y el string `Hola mundo!` en otro. + +```javascript +var mensaje = 2017; // Declaro y asigno la variable mensaje +mensaje = 'Hola mundo!'; // Cambio su valor + +console.log(mensaje); // Lo muestro por la terminal. Deberías ver "Hola mundo!" +``` + +## Tips - ```javascript - console.log('Mi edad es', 27); - ``` +* Siempre que sea posible, declará tus variables al principio de tus programas. +* Siempre que sea posible, asigná un valor a tus variables al momento de declararlas, para evitar que tengan como valor `undefined` cuando quieras usarlas. +* Usá nombres significativos. Para JavaScript es lo mismo si tu variable se llama `n`, `numero` o `miNumeroFavorito`. Tiene que tener sentido para vos que vas a escribir el código 1 vez pero leerlo 100 veces. +* Intentá no cambiar el tipo de dato de tus variables. Si la vas a usar para guardar un número, intentá que siempre tenga un número. +* Creá tantas variables como necesites. No hay un límite. ## Ejercicios -1. Usando un número, mostrar tu edad por la terminal. -1. Usando una cadena de caracteres, mostrar tu nombre por la terminal. -1. Usando un booleano, mostrar el valor verdadero por la terminal. -1. Usando un solo `console.log`, mostrar los valores `1`, `200`, `'Genial'`, `false`, `true`. +1. Declarar una variable de nombre `cantidadDeVentanasEnMiCasa` y asignarle la cantidad de ventanas que hay en tu casa. Mostrar el valor de la variable por la terminal. +1. Declarar una variable de nombre `soyHumano` y asignarle el valor `true` (verdadero). Mostrar el valor de la variable por la terminal. +1. Declarar una variable de nombre `miGustoDePizzaPreferido` y asignarle la variedad de pizza que más te guste usando un `string` (cadena de caracteres). Mostrar el valor de la variable por la terminal. +1. Mostrar por la terminal los siguientes valores `false`, `'Hola'`, `0` y `'Minions'` usando la misma variable. [Respuestas](/respuestas/03.js) -[Continuar con Variables](/ejercicios/conceptuales/04.md) +[Continuar con Operadores](/ejercicios/conceptuales/04.md) diff --git a/ejercicios/conceptuales/04.md b/ejercicios/conceptuales/04.md index 22760ae..d13646b 100644 --- a/ejercicios/conceptuales/04.md +++ b/ejercicios/conceptuales/04.md @@ -1,89 +1,205 @@ -# Variables +> Revisar ejercicios de operadores +> +# Operadores -Una variable es una referencia a un valor (Suena difícil, ¿no? 🤔. Pero tranqui, no lo es). +Un operador es un símbolo (compuesto de 1 o más caracteres) que tiene una función predefinida en el lenguaje. -Pensemos a una variable como si fuera una caja. A esta caja le vamos a poner un nombre que nos va a permitir acceder a ella cuando lo necesitemos. +Uno de ellos es el signo `=` (igual), usado para asignar el valor de la derecha a la variable de la izquierda, tal como lo aprendimos en el módulo anterior. -Para decirle a JavaScript que vamos a declarar una variable, lo hacemos escribiendo la palabra `var`: +Los operadores más importantes son: -```javascript -// Oye, JavaScript, necesito que crees una cajita llamada `miNumeroFavorito` -var miNumeroFavorito; -``` +* Asignación (`=`): asigna un valor a una variable. -> A esto se lo conoce como **_declarar_** una variable. + ```javascript + var animalMasMolesto = 'Mosquito'; -Así como los valores, las variables pueden ser mostradas en la terminal usando `console.log`. Veamos que valor tiene nuestra variable `miNumeroFavorito`. + console.log(animalMasMolesto); // 'Mosquito' + ``` -```javascript -// Declaro una variable llamada `miNumeroFavorito` -var miNumeroFavorito; +* Adición (`+`): si se usa con números, suma ambos valores. -// La muestro en la terminal. Deberías ver `undefined` -console.log(miNumeroFavorito); -``` + ```javascript + var anoQueViene = 2017 + 1; -## `undefined`: mi variable todavía no tiene valor + console.log(anoQueViene); // 2018 + ``` -`undefined` es el valor que JavaScript le pone por defecto a las variables. ¿Te acordás cuando al principio de esta explicación te contamos que una variable es una referencia a un valor? Bueno, como no le dijimos a JavaScript que valor poner dentro de nuesta caja, él puso uno por nosotros. Ese valor es `undefined`. + Si se usa con strings, su función va a ser la de **_concatenar_** las dos cadenas de texto. -> `undefined` es un tipo de dato en JavaScript. + ```javascript + var saludo = 'Hola, ' + 'Juan'; -Para poner un valor dentro de nuestra caja, usamos el **_operador de asignación_** que se escribe con el signo `=` (igual). + console.log(saludo); // 'Hola, Juan' + ``` -```javascript -// Declaro una variable llamada `miNumeroFavorito` -var miNumeroFavorito; +* Sustracción (`-`): resta el valor de la derecha al valor de la izquierda. -// Deberías ver `undefined` porque todavía no le pusimos ningún valor -console.log(miNumeroFavorito); + ```javascript + var anoPasado = 2017 - 1; -// Asigno el número 123 a mi variable -miNumeroFavorito = 123; + console.log(anoPasado); // 2016 + ``` -// Muestro su valor por la terminal. Deberías ver 123 -console.log(miNumeroFavorito); -``` +* Multiplicación (`*`): multiplica ambos valores a los lados del operador. -> A esto se lo conoce como **_asignar_** una variable + ```javascript + var alCuadrado = 3 * 3; -A una variable le podemos asignar el valor que más nos guste: un número, una cadena de caracteres o un booleano (los únicos tipos de datos que conocemos por el momento). + console.log(alCuadrado); // 9 + ``` -Tanto la declaración como la asignación, la podemos hacer al mismo tiempo, aunque conceptualmente sean 2 instrucciones separadas. +* División (`/`): divide el valor de la izquierda por el valor de la derecha. -```javascript -// Declaro la variable `miColorFavorito` -// Le asigno 'Amarillo patito' como valor -var miColorFavorito = 'Amarillo patito'; + ```javascript + var laMitad = 12 / 2; -// Deberías ver 'Amarillo patito' en la terminal -console.log(miColorFavorito); -``` + console.log(laMitad); // 6 + ``` -Nos queda un detalle más por explorar. Cambiar el valor de una variable (Para hacerle honor a su nombre 😂). Podemos cambiar el valor de una variable en cualquier momento y no necesariamente por el mismo tipo de dato. Una variable puede valer el número `2017` en un momento y el string `Hola mundo!` en otro. +* Igualdad (`==`): devuelve `true` si ambos valores son iguales. -```javascript -var mensaje = 2017; // Declaro y asigno la variable mensaje -mensaje = 'Hola mundo!'; // Cambio su valor + ```javascript + var sonIguales = 'coche' == 'coche'; + var sonLoMismo = 90 == 30; -console.log(mensaje); // Lo muestro por la terminal. Deberías ver "Hola mundo!" -``` + console.log(sonIguales); // true + console.log(sonLoMismo); // false + ``` + +* Desigualdad (`!=`): devuelve `true` si ambos valores son distintos. + + ```javascript + var sonDistintos = 'barco' != 'barco'; + var sonDiferentes = 2 != 3; + + console.log(sonDistintos); // false + console.log(sonDiferentes); // true + ``` + +* Igualdad estricta (`===`): devuelve `true` si los valores son iguales y tienen el mismo tipo. + + ```javascript + var sonIguales = 8 === 8; + var sonLoMismo = 75 === '75'; // '75' es un `string` + + console.log(sonIguales); // true + console.log(sonLoMismo); // false + ``` + +* Desigualdad estricta (`!==`): devuelve `true` si los valores son distintos y tienen el mismo tipo. + + ```javascript + var sonDistintos = 6 !== 6; + var sonDiferentes = 16 !== '16'; // '16' es un `string` + + console.log(sonDistintos); // false + console.log(sonDiferentes); // true + ``` + +* Mayor (`>`): devuelve `true` si el valor de la izquierda es mayor que el valor de la derecha. + + ```javascript + var esMasGrande = 10 > 5; + var esMayor = 1 > 100; + + console.log(esMasGrande); // true + console.log(esMayor); // false + ``` + +* Menor (`<`): devuelve `true` si el valor de la izquierda es menor al valor de la derecha. + + ```javascript + var esMasChico = 400 < 1000; + var esMenor = 12 < 9; + + console.log(esMasChico); // true + console.log(esMenor); // false + ``` + +* Mayor o igual (`>=`): devuelve `true` si el valor de la izquierda es mayor o igual que el valor de la derecha. + + ```javascript + var esMayorOIgual = 124 >= 123; + + console.log(esMayorOIgual); // true + ``` + +* Menor o igual (`<=`): devuelve `true` si el valor de la izquierda es menor o igual que el valor de la derecha. + + ```javascript + var esMenorOIgual = 7 <= 9; + + console.log(esMenorOIgual); // true + ``` ## Tips -* Siempre que sea posible, declará tus variables al principio de tus programas. -* Siempre que sea posible, asigná un valor a tus variables al momento de declararlas, para evitar que tengan como valor `undefined` cuando quieras usarlas. -* Usá nombres significativos. Para JavaScript es lo mismo si tu variable se llama `n`, `numero` o `miNumeroFavorito`. Tiene que tener sentido para vos que vas a escribir el código 1 vez pero leerlo 100 veces. -* Intentá no cambiar el tipo de dato de tus variables. Si la vas a usar para guardar un número, intentá que siempre tenga un número. -* Creá tantas variables como necesites. No hay un límite. +* Podés usar los operadores para trabajar con variables! Ejemplo: + + ```javascript + var golesEquipo1 = 14; + var golesEquipo2 = 10; + + var ganoEquipo1 = golesEquipo1 > golesEquipo2; + var empate = golesEquipo1 === golesEquipo2; + + console.log(ganoEquipo1); // true + console.log(empate); // false + ``` +* Muchas veces, no es necesario guardar los resultados de las operaciones en variables: podés mostrar o usar el valor que devuelve la expresión directamente. Ejemplo: + + ```javascript + var golesEquipo1 = 7; + var golesEquipo2 = 7; + + // Esto devuelve `true` + // Significa que el partido fue empate + console.log('¿Fue empate?'); + console.log(golesEquipo1 === golesEquipo2); + ``` ## Ejercicios -1. Declarar una variable de nombre `cantidadDeVentanasEnMiCasa` y asignarle la cantidad de ventanas que hay en tu casa. Mostrar el valor de la variable por la terminal. -1. Declarar una variable de nombre `soyHumano` y asignarle el valor `true` (verdadero). Mostrar el valor de la variable por la terminal. -1. Declarar una variable de nombre `miGustoDePizzaPreferido` y asignarle la variedad de pizza que más te guste usando un `string` (cadena de caracteres). Mostrar el valor de la variable por la terminal. -1. Mostrar por la terminal los siguientes valores `false`, `'Hola'`, `0` y `'Minions'` usando la misma variable. +1. Declarar una variable llamada `noValgoNi5` y asignarle el valor `4`. Mostrar el valor de la variable por la terminal. +1. Declarar 3 variables: + + * `miAnoDeNacimiento` y asignarle el valor de tu año de nacimiento. + * `meGustariaTener80Anos` y asignarle el número `80`. + * `voyATener80ElAno` y asignarle el resultado de sumar las 2 variables anteriores + + Mostrar por la terminal el año en el que vas a cumplir 80 años. +1. Declarar 3 variables: + + * `costoDeUnaTele` y asignarle el valor `10000`. + * `ahorros` y asignarle el valor `9000`. + * `dineroQueMeFalta` y asignarle el resultado de restar las 2 variables anteriores. + + Mostrar por la terminal cuanto dinero te falta para comprar la tele. +1. Declarar 3 variables: + + * `diasPorAno` y asignarle el número `365` + * `cantidadDeAnosEnUnaDecada` y asignarle el número `10` + * `cantidadDeDiasEnUnaDecada` y asignarle el resultado de multiplicar las 2 variables anteriores. + + Mostrar por la terminal cuantos días hay en una década. +1. Teniendo en cuenta que una pizza siempre tiene 8 porciones, mostrar por la terminal cuantas pizzas tengo en la mesa si conté 24 porciones. + + Preguntas que te deberías hacer para resolver este ejercicio: ¿Qué números menciona el enunciado?, ¿Los puedo guardar en variables?, ¿Qué cuenta puedo hacer para obtener el resultado? +1. Declarar una variable de nombre `miAnimalFavorito` y asignarle como valor el string que represente el animal que más te gusta. Escribir el código necesario para mostrar por la terminal el valor `true` si el animal que más te gusta es un `'perro'`. De lo contrario, mostrar `false`. Usar el operador de igualdad (`==`). +1. Usar el operador de desigualdad (`!=`) para mostrar por la terminal el resultado de comparar la cadena de caracteres `'flan'` y `'flan con dulce de leche'` (Podés crear todas las variables que quieras, incluso podés resolverlo sin usar variables). +1. Declarar una variable llamada `soyMayorDeEdad` y asignarle el resultado de comparar tu edad y el número `17` usando el operador `>` (mayor). Mostrar el valor de la variable por la terminal. +1. Declarar una variable llamada `soyMenorDe25` y asignarle el resultado de comparar tu edad y el número `25` usando el operador `<` (menor). Mostrar el valor de la variable por la terminal. +1. Declarar una variable llamada `estamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual es igual a `'Enero'`. Hacerlo usando el operador de igualdad estricta (`===`). Mostrar el valor de la variable por la terminal. +1. Declarar una variable llamada `noEstamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual y el string `'Enero'` son diferentes. Hacerlo usando el operador de desigualdad estricta (`!==`). Mostrar el valor de la variable por la terminal. +1. Declarar 3 variables: + + * `miNotaEnElParcial` y asignarle un `8` + * `notaMinimaParaAprobar` y asignarle un `6` + * `estoyAprobado` y asignarle el resultado de comparar el número las dos variables anteriores usando el operador `>=` (Mayor o igual). + + Mostrar el valor de la variable `estoyAprobado` por la terminal. +1. Declarar una variable llamada `esHoraDeAlmorzar` cuyo valor sea el resultado de comparar con el operador `<=` (Menor o igual) si la hora actual es menor o igual a `12`. Mostrar el valor por la terminal. [Respuestas](/respuestas/04.js) -[Continuar con Operadores](/ejercicios/conceptuales/05.md) +[Continuar con Condicionales](/ejercicios/conceptuales/05.md) diff --git a/ejercicios/conceptuales/05.md b/ejercicios/conceptuales/05.md index 88c8d59..6114388 100644 --- a/ejercicios/conceptuales/05.md +++ b/ejercicios/conceptuales/05.md @@ -1,203 +1,143 @@ -# Operadores +> Revisar ejercicio 3 de condicionales +> +# Condicionales -Un operador es un símbolo (compuesto de 1 o más caracteres) que tiene una función predefinida en el lenguaje. +En muchos casos, necesitamos tomar decisiones en un programa para ejecutar diferentes sentencias si una condición se cumple. Por ejemplo, mostrar en la terminal un mensaje que diga `'Estás aprobado'` si la variable `notaDelParcial` es `>=` (Mayor o igual) a `4`. -Uno de ellos es el signo `=` (igual), usado para asignar el valor de la derecha a la variable de la izquierda, tal como lo aprendimos en el módulo anterior. +Este tipo de decisiones en el código las vamos a escribir usando la sentencia `if` seguida de una expresión entre `()` (paréntesis) que debe poder ser interpretada como `true` para ejecutar el código que está entre `{}` (llaves). -Los operadores más importantes son: +Veamos un ejemplo para que sea más claro: -* Asignación (`=`): asigna un valor a una variable. +```javascript +// Declaro y asigno una variable +var notaDelParcial = 8; - ```javascript - var animalMasMolesto = 'Mosquito'; +// Si `notaDelParcial` es mayor o igual a 4 +if (notaDelParcial >= 4) { - console.log(animalMasMolesto); // 'Mosquito' - ``` + // Muestro por la terminal un mensaje de que el usuario aprobó + console.log('Estás aprobado'); -* Adición (`+`): si se usa con números, suma ambos valores. +} +``` - ```javascript - var anoQueViene = 2017 + 1; +También existe la clausula `else` (no obligatoria, podés omitirla si no es necesaria) que nos permite especificar las sentencias a ejecutar si la condición original del `if` no se cumplió. - console.log(anoQueViene); // 2018 - ``` +```javascript +// Declaro y asigno una variable +var notaDelParcial = 8; - Si se usa con strings, su función va a ser la de **_concatenar_** las dos cadenas de texto. +// Si `notaDelParcial` es mayor o igual a 4 +if (notaDelParcial >= 4) { - ```javascript - var saludo = 'Hola, ' + 'Juan'; + // Muestro por la terminal un mensaje de que el usuario aprobó + console.log('Estás aprobado'); - console.log(saludo); // 'Hola, Juan' - ``` +// Caso contrario: `notaDelParcial es menor a 4` +} else { -* Sustracción (`-`): resta el valor de la derecha al valor de la izquierda. + // Muestro por la terminal un mensaje de que el usuario desaprobó + console.log('Seguí participando'); - ```javascript - var anoPasado = 2017 - 1; - - console.log(anoPasado); // 2016 - ``` +} +``` -* Multiplicación (`*`): multiplica ambos valores a los lados del operador. - - ```javascript - var alCuadrado = 3 * 3; +Por último, existe la clausula `else if` (no obligatoria, podés omitirla si no es necesaria) que tiene la misma función que el `if` que ya conocés, solo que podés escribir más de uno para abarcar más casos. - console.log(alCuadrado); // 9 - ``` +```javascript +// Declaro y asigno una variable +var temperaturaActual = 24; -* División (`/`): divide el valor de la izquierda por el valor de la derecha. +// Muestro un mensaje por la terminal en base a la temperatura - ```javascript - var laMitad = 12 / 2; +// Si la temperatura es menor a 10 grados... +if (temperaturaActual < 10) { - console.log(laMitad); // 6 - ``` + console.log('¡QUE FRIO!'); -* Igualdad (`==`): devuelve `true` si ambos valores son iguales. +} else if (temperaturaActual < 15) { // Si es menor a 15 - ```javascript - var sonIguales = 'coche' == 'coche'; - var sonLoMismo = 90 == 30; + console.log('Asegurate de llevar una campera porque hace frio'); - console.log(sonIguales); // true - console.log(sonLoMismo); // false - ``` +} else if (temperaturaActual <= 22) { // Si es menor o igual a 22 -* Desigualdad (`!=`): devuelve `true` si ambos valores son distintos. + console.log('Es un día hermoso (:'); - ```javascript - var sonDistintos = 'barco' != 'barco'; - var sonDiferentes = 2 != 3; +} else if (temperaturaActual < 30) { // Si es menor a 30 - console.log(sonDistintos); // false - console.log(sonDiferentes); // true - ``` + console.log('Que lindo sería poder meterme a la pileta'); -* Igualdad estricta (`===`): devuelve `true` si los valores son iguales y tienen el mismo tipo. +} else if (temperaturaActual < 40) { // Si es menor a 40 - ```javascript - var sonIguales = 8 === 8; - var sonLoMismo = 75 === '75'; // '75' es un `string` + console.log('¡Que calor hermano!'); - console.log(sonIguales); // true - console.log(sonLoMismo); // false - ``` +} else { // Hace más de 40 grados -* Desigualdad estricta (`!==`): devuelve `true` si los valores son distintos y tienen el mismo tipo. + console.log('¿ESTO ES EL DESIERTO?'); - ```javascript - var sonDistintos = 6 !== 6; - var sonDiferentes = 16 !== '16'; // '16' es un `string` +} +``` - console.log(sonDistintos); // false - console.log(sonDiferentes); // true - ``` +## Tips -* Mayor (`>`): devuelve `true` si el valor de la izquierda es mayor que el valor de la derecha. +* Dentro de cada `if`, `if else` o `else` podés declarar y asignar variables, mostrar mensajes por la terminal o cualquier otra sentencia que sepas. No te limites solo a estos ejemplos. +* Siempre que tengas un caso como el ejemplo anterior, un consejo es: asignar el mensaje a mostrar en una variable y hacer el `console.log` mostrando su valor al final. ```javascript - var esMasGrande = 10 > 5; - var esMayor = 1 > 100; + // Declaro y asigno una variable + var temperaturaActual = 24; - console.log(esMasGrande); // true - console.log(esMayor); // false - ``` + // Declaro una variable sin asignarle valor, + // por lo que JavaScript le pone `undefined` + var mensajeAMostrar; -* Menor (`<`): devuelve `true` si el valor de la izquierda es menor al valor de la derecha. + // Si la temperatura es menor a 10 grados, + // guardo el mensaje que quiero mostrar al final del programa + if (temperaturaActual < 10) { - ```javascript - var esMasChico = 400 < 1000; - var esMenor = 12 < 9; + mensajeAMostrar = '¡QUE FRIO!'; - console.log(esMasChico); // true - console.log(esMenor); // false - ``` + } else if (temperaturaActual < 15) { // Si es menor a 15 -* Mayor o igual (`>=`): devuelve `true` si el valor de la izquierda es mayor o igual que el valor de la derecha. + mensajeAMostrar = 'Asegurate de llevar una campera porque hace frio'; - ```javascript - var esMayorOIgual = 124 >= 123; + } else if (temperaturaActual <= 22) { // Si es menor o igual a 22 - console.log(esMayorOIgual); // true - ``` + mensajeAMostrar = 'Es un día hermoso (:'; -* Menor o igual (`<=`): devuelve `true` si el valor de la izquierda es menor o igual que el valor de la derecha. + } else if (temperaturaActual < 30) { // Si es menor a 30 - ```javascript - var esMenorOIgual = 7 <= 9; + mensajeAMostrar = 'Que lindo sería poder meterme a la pileta'; - console.log(esMenorOIgual); // true - ``` + } else if (temperaturaActual < 40) { // Si es menor a 40 -## Tips + mensajeAMostrar = '¡Que calor hermano!'; -* Podés usar los operadores para trabajar con variables! Ejemplo: + } else { // hace más de 40 grados - ```javascript - var golesEquipo1 = 14; - var golesEquipo2 = 10; + mensajeAMostrar = '¿ESTO ES EL DESIERTO?'; - var ganoEquipo1 = golesEquipo1 > golesEquipo2; - var empate = golesEquipo1 === golesEquipo2; + } - console.log(ganoEquipo1); // true - console.log(empate); // false - ``` -* Muchas veces, no es necesario guardar los resultados de las operaciones en variables: podés mostrar o usar el valor que devuelve la expresión directamente. Ejemplo: - - ```javascript - var golesEquipo1 = 7; - var golesEquipo2 = 7; - - // Esto devuelve `true` - // Significa que el partido fue empate - console.log('¿Fue empate?'); - console.log(golesEquipo1 === golesEquipo2); + // Muestro el valor de la variable que va a ser: + // 'Que lindo sería poder meterme a la pileta' porque la temperatura + // es 24 grados, por lo que el código pasó por el tercer `else if` + console.log(mensajeAMostrar); ``` ## Ejercicios -1. Declarar una variable llamada `noValgoNi5` y asignarle el valor `4`. Mostrar el valor de la variable por la terminal. -1. Declarar 3 variables: - - * `miAnoDeNacimiento` y asignarle el valor de tu año de nacimiento. - * `meGustariaTener80Anos` y asignarle el número `80`. - * `voyATener80ElAno` y asignarle el resultado de sumar las 2 variables anteriores - - Mostrar por la terminal el año en el que vas a cumplir 80 años. -1. Declarar 3 variables: - - * `costoDeUnaTele` y asignarle el valor `10000`. - * `ahorros` y asignarle el valor `9000`. - * `dineroQueMeFalta` y asignarle el resultado de restar las 2 variables anteriores. - - Mostrar por la terminal cuanto dinero te falta para comprar la tele. -1. Declarar 3 variables: - - * `diasPorAno` y asignarle el número `365` - * `cantidadDeAnosEnUnaDecada` y asignarle el número `10` - * `cantidadDeDiasEnUnaDecada` y asignarle el resultado de multiplicar las 2 variables anteriores. - - Mostrar por la terminal cuantos días hay en una década. -1. Teniendo en cuenta que una pizza siempre tiene 8 porciones, mostrar por la terminal cuantas pizzas tengo en la mesa si conté 24 porciones. - - Preguntas que te deberías hacer para resolver este ejercicio: ¿Qué números menciona el enunciado?, ¿Los puedo guardar en variables?, ¿Qué cuenta puedo hacer para obtener el resultado? -1. Declarar una variable de nombre `miAnimalFavorito` y asignarle como valor el string que represente el animal que más te gusta. Escribir el código necesario para mostrar por la terminal el valor `true` si el animal que más te gusta es un `'perro'`. De lo contrario, mostrar `false`. Usar el operador de igualdad (`==`). -1. Usar el operador de desigualdad (`!=`) para mostrar por la terminal el resultado de comparar la cadena de caracteres `'flan'` y `'flan con dulce de leche'` (Podés crear todas las variables que quieras, incluso podés resolverlo sin usar variables). -1. Declarar una variable llamada `soyMayorDeEdad` y asignarle el resultado de comparar tu edad y el número `17` usando el operador `>` (mayor). Mostrar el valor de la variable por la terminal. -1. Declarar una variable llamada `soyMenorDe25` y asignarle el resultado de comparar tu edad y el número `25` usando el operador `<` (menor). Mostrar el valor de la variable por la terminal. -1. Declarar una variable llamada `estamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual es igual a `'Enero'`. Hacerlo usando el operador de igualdad estricta (`===`). Mostrar el valor de la variable por la terminal. -1. Declarar una variable llamada `noEstamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual y el string `'Enero'` son diferentes. Hacerlo usando el operador de desigualdad estricta (`!==`). Mostrar el valor de la variable por la terminal. -1. Declarar 3 variables: +1. Declarar una variable que se llame `ganeLaCarrera` y asignarle el valor `false`. Mostrar por la terminal un mensaje que diga `'Ganaste'` si `ganeLaCarrera` es verdadero y `'Perdiste'` si su valor es falso. +1. Declarar una variable que se llame `posicionEnLaCarrera` y asignarle el número `6`. Mostrar por la terminal uno de los siguientes mensajes según la posición que salió el corredor: - * `miNotaEnElParcial` y asignarle un `8` - * `notaMinimaParaAprobar` y asignarle un `6` - * `estoyAprobado` y asignarle el resultado de comparar el número las dos variables anteriores usando el operador `>=` (Mayor o igual). + * `'FELICITACIONES, SALISTE 1RO'` si la `posicionEnLaCarrera` es 1. + * `'Te falto poquito para ganar'` si la `posicionEnLaCarrera` es 2. + * `'Sos un orgullo para tu familia'` si la `posicionEnLaCarrera` es 3. + * `'Volvé a tu casa'` si la `posicionEnLaCarrera` es mayor a 3. + * `'No tires fruta'` si la `posicionEnLaCarrera` es otro valor no contemplado antes. - Mostrar el valor de la variable `estoyAprobado` por la terminal. -1. Declarar una variable llamada `esHoraDeAlmorzar` cuyo valor sea el resultado de comparar con el operador `<=` (Menor o igual) si la hora actual es menor o igual a `12`. Mostrar el valor por la terminal. +1. Repetir el ejercicio anterior pero usando un solo `console.log` en todo el programa. [Respuestas](/respuestas/05.js) -[Continuar con Condicionales](/ejercicios/conceptuales/06.md) +[Continuar con Parcialito :speak_no_evil:](/ejercicios/conceptuales/06.md) diff --git a/ejercicios/conceptuales/06.md b/ejercicios/conceptuales/06.md index a610182..b300a21 100644 --- a/ejercicios/conceptuales/06.md +++ b/ejercicios/conceptuales/06.md @@ -1,141 +1,31 @@ -# Condicionales +> Ver de adaptar parcialito a trabajo en equipo de a 2 personas. Cambiar el nombre +> agregar requerimientos incrementales, al final del workshop hacer pasar a varios grupos a ver por qué eligieron esas ideas -En muchos casos, necesitamos tomar decisiones en un programa para ejecutar diferentes sentencias si una condición se cumple. Por ejemplo, mostrar en la terminal un mensaje que diga `'Estás aprobado'` si la variable `notaDelParcial` es `>=` (Mayor o igual) a `4`. -Este tipo de decisiones en el código las vamos a escribir usando la sentencia `if` seguida de una expresión entre `()` (paréntesis) que debe poder ser interpretada como `true` para ejecutar el código que está entre `{}` (llaves). +# Parcialito 🙊 -Veamos un ejemplo para que sea más claro: +La idea de este módulo es ejercitar lo que aprendimos hasta el momento. Para ello, vamos a plantear 2 ejercicios: -```javascript -// Declaro y asigno una variable -var notaDelParcial = 8; +1. Juan y Pedro son hermanos. La semana pasada tuvieron una prueba en el colegio y hoy la profesora les dio la nota. Escribir un programa que: + 1. Declare y asigne 2 variables de tipo número: una con la nota de Juan (`10`) y otra con la nota de Pedro (`8`). Nombrá a las variables como más te guste. + 1. Mostrar por la terminal el valor más grande de los 2. + 1. Considerá el caso de que pueden ser iguales 🙊. Si eso ocurre, mostrar el mensaje: `'Ambos hijos tuvieron la misma nota'`. -// Si `notaDelParcial` es mayor o igual a 4 -if (notaDelParcial >= 4) { + Casos que te pueden ayudar para probar: - // Muestro por la terminal un mensaje de que el usuario aprobó - console.log('Estás aprobado'); + 1. Si Juan se saca un `4` y Pedro un `6`. Mostrar `6`. + 1. Si Juan se saca un `9` y Pedro un `8`. Mostrar `9`. + 1. Si ambos se sacan un `7`, mostrar `'Ambos hijos tuvieron la misma nota'`. -} -``` +1. Una farmacia hace el 15% de descuento a sus clientes si la compra es mayor a 100 pesos. Escribir un programa que dado el monto de una compra como valor numérico, diga cuanto debe abonar el cliente aplicando el descuento si es necesario. -También existe la clausula `else` (no obligatoria, podés omitirla si no es necesaria) que nos permite especificar las sentencias a ejecutar si la condición original del `if` no se cumplió. + > Tip: Para obtener el porcentaje de un número podés usar la siguiente fórmula: `número * descuento / 100` (La famosa regla de 3 simple 😮). -```javascript -// Declaro y asigno una variable -var notaDelParcial = 8; + Si el monto de compra es de 500 pesos, ¿cuánto debe pagar el cliente? -// Si `notaDelParcial` es mayor o igual a 4 -if (notaDelParcial >= 4) { + Casos que te pueden ayudar para probar: - // Muestro por la terminal un mensaje de que el usuario aprobó - console.log('Estás aprobado'); - -// Caso contrario: `notaDelParcial es menor a 4` -} else { - - // Muestro por la terminal un mensaje de que el usuario desaprobó - console.log('Seguí participando'); - -} -``` - -Por último, existe la clausula `else if` (no obligatoria, podés omitirla si no es necesaria) que tiene la misma función que el `if` que ya conocés, solo que podés escribir más de uno para abarcar más casos. - -```javascript -// Declaro y asigno una variable -var temperaturaActual = 24; - -// Muestro un mensaje por la terminal en base a la temperatura - -// Si la temperatura es menor a 10 grados... -if (temperaturaActual < 10) { - - console.log('¡QUE FRIO!'); - -} else if (temperaturaActual < 15) { // Si es menor a 15 - - console.log('Asegurate de llevar una campera porque hace frio'); - -} else if (temperaturaActual <= 22) { // Si es menor o igual a 22 - - console.log('Es un día hermoso (:'); - -} else if (temperaturaActual < 30) { // Si es menor a 30 - - console.log('Que lindo sería poder meterme a la pileta'); - -} else if (temperaturaActual < 40) { // Si es menor a 40 - - console.log('¡Que calor hermano!'); - -} else { // Hace más de 40 grados - - console.log('¿ESTO ES EL DESIERTO?'); - -} -``` - -## Tips - -* Dentro de cada `if`, `if else` o `else` podés declarar y asignar variables, mostrar mensajes por la terminal o cualquier otra sentencia que sepas. No te limites solo a estos ejemplos. -* Siempre que tengas un caso como el ejemplo anterior, un consejo es: asignar el mensaje a mostrar en una variable y hacer el `console.log` mostrando su valor al final. - - ```javascript - // Declaro y asigno una variable - var temperaturaActual = 24; - - // Declaro una variable sin asignarle valor, - // por lo que JavaScript le pone `undefined` - var mensajeAMostrar; - - // Si la temperatura es menor a 10 grados, - // guardo el mensaje que quiero mostrar al final del programa - if (temperaturaActual < 10) { - - mensajeAMostrar = '¡QUE FRIO!'; - - } else if (temperaturaActual < 15) { // Si es menor a 15 - - mensajeAMostrar = 'Asegurate de llevar una campera porque hace frio'; - - } else if (temperaturaActual <= 22) { // Si es menor o igual a 22 - - mensajeAMostrar = 'Es un día hermoso (:'; - - } else if (temperaturaActual < 30) { // Si es menor a 30 - - mensajeAMostrar = 'Que lindo sería poder meterme a la pileta'; - - } else if (temperaturaActual < 40) { // Si es menor a 40 - - mensajeAMostrar = '¡Que calor hermano!'; - - } else { // hace más de 40 grados - - mensajeAMostrar = '¿ESTO ES EL DESIERTO?'; - - } - - // Muestro el valor de la variable que va a ser: - // 'Que lindo sería poder meterme a la pileta' porque la temperatura - // es 24 grados, por lo que el código pasó por el tercer `else if` - console.log(mensajeAMostrar); - ``` - -## Ejercicios - -1. Declarar una variable que se llame `ganeLaCarrera` y asignarle el valor `false`. Mostrar por la terminal un mensaje que diga `'Ganaste'` si `ganeLaCarrera` es verdadero y `'Perdiste'` si su valor es falso. -1. Declarar una variable que se llame `posicionEnLaCarrera` y asignarle el número `6`. Mostrar por la terminal uno de los siguientes mensajes según la posición que salió el corredor: - - * `'FELICITACIONES, SALISTE 1RO'` si la `posicionEnLaCarrera` es 1. - * `'Te falto poquito para ganar'` si la `posicionEnLaCarrera` es 2. - * `'Sos un orgullo para tu familia'` si la `posicionEnLaCarrera` es 3. - * `'Volvé a tu casa'` si la `posicionEnLaCarrera` es mayor a 3. - * `'No tires fruta'` si la `posicionEnLaCarrera` es otro valor no contemplado antes. - -1. Repetir el ejercicio anterior pero usando un solo `console.log` en todo el programa. + 1. Si el monto de la compra es `55`. Mostrar `55` (Es menor a 100, por lo que no se aplica descuento). + 1. Si el monto de la compra es 200. Mostrar `170`, equivalente a `200 - descuento`. Para calcular el descuento ya te dí una pista 😉. [Respuestas](/respuestas/06.js) - -[Continuar con Parcialito :speak_no_evil:](/ejercicios/conceptuales/07.md) diff --git a/ejercicios/conceptuales/07.md b/ejercicios/conceptuales/07.md deleted file mode 100644 index dbaab6f..0000000 --- a/ejercicios/conceptuales/07.md +++ /dev/null @@ -1,29 +0,0 @@ -# Parcialito 🙊 - -La idea de este módulo es ejercitar lo que aprendimos hasta el momento. Para ello, vamos a plantear 2 ejercicios: - -1. Juan y Pedro son hermanos. La semana pasada tuvieron una prueba en el colegio y hoy la profesora les dio la nota. Escribir un programa que: - 1. Declare y asigne 2 variables de tipo número: una con la nota de Juan (`10`) y otra con la nota de Pedro (`8`). Nombrá a las variables como más te guste. - 1. Mostrar por la terminal el valor más grande de los 2. - 1. Considerá el caso de que pueden ser iguales 🙊. Si eso ocurre, mostrar el mensaje: `'Ambos hijos tuvieron la misma nota'`. - - Casos que te pueden ayudar para probar: - - 1. Si Juan se saca un `4` y Pedro un `6`. Mostrar `6`. - 1. Si Juan se saca un `9` y Pedro un `8`. Mostrar `9`. - 1. Si ambos se sacan un `7`, mostrar `'Ambos hijos tuvieron la misma nota'`. - -1. Una farmacia hace el 15% de descuento a sus clientes si la compra es mayor a 100 pesos. Escribir un programa que dado el monto de una compra como valor numérico, diga cuanto debe abonar el cliente aplicando el descuento si es necesario. - - > Tip: Para obtener el porcentaje de un número podés usar la siguiente fórmula: `número * descuento / 100` (La famosa regla de 3 simple 😮). - - Si el monto de compra es de 500 pesos, ¿cuánto debe pagar el cliente? - - Casos que te pueden ayudar para probar: - - 1. Si el monto de la compra es `55`. Mostrar `55` (Es menor a 100, por lo que no se aplica descuento). - 1. Si el monto de la compra es 200. Mostrar `170`, equivalente a `200 - descuento`. Para calcular el descuento ya te dí una pista 😉. - -[Respuestas](/respuestas/07.js) - -[Continuar con Arrays](/ejercicios/conceptuales/08.md) diff --git a/ejercicios/conceptuales/08.md b/ejercicios/conceptuales/08.md deleted file mode 100644 index e3310fa..0000000 --- a/ejercicios/conceptuales/08.md +++ /dev/null @@ -1,207 +0,0 @@ -# Arrays - -Hagamos un repaso de los tipos de datos que conocemos: - -1. Números: `1`, `2`, `0`, etc. -1. String o cadenas de texto: `Hola JavaScript`. -1. Booleanos: `true` o `false`. -1. `undefined`: valor especial que JavaScript le da a variables que fueron creadas pero no asignadas. - -En este módulo vamos a aprender uno nuevo: Arrays. - -Un **_array_** es un objeto global que ofrece Javascript, que almacena valores en formato lista. Esto nos va a permitir tener variables que representen información más compleja que un simple número o cadena de caracteres ya que vamos a poder almacenar muchos valores al mismo tiempo. - -```javascript -// Declaro un array con números -// Prestar atención a los [] (corchetes) y , (comas) para separar -// los diferentes valores que van a estar dentro de él -var numeros = [1, 2, 3, 4, 5]; - -// Declaro un array con strings -var palabras = ['Hola', 'mundo', 'cruel']; - -// Declaro un array con múltiples tipos de datos -// (Sí, se puede 😊) -var deTodo = [true, 'JavaScript', 100, false]; - -// Muestro por la terminal todos los arrays -console.log(numeros); // [1, 2, 3, 4, 5] -console.log(palabras); // ['Hola', 'mundo', 'cruel'] -console.log(deTodo); // [true, 'JavaScript', 100, false] -``` - -> Este nuevo tipo de dato nos va a posibilitar agrupar información relacionada. - -```javascript -// Declaro y asigno una variable de tipo array -var misPeliculasFavoritas = ['Mi villano favorito', '9 reinas', 'Hércules vigila']; - -// Muestro mi lista de peliculas favoritas por la terminal -console.log(misPeliculasFavoritas); -``` - -> Otros ejemplos podrían ser: lista de usuarios de tu aplicación, lista de temas de un disco, notas de un alumno en una materia, meses del año o cualquier combinación de valores y tipos de datos que quieras. - -A cada valor dentro del array se lo denomina **_elemento_** y podés acceder a cada uno por medio de su **_índice_** (empezando por 0). - -```javascript -var mesesDelPrimerTrimestre = ['Enero', 'Febrero', 'Marzo']; - -// Guardo en una variable el primer elemento dentro del array ('Enero') -var primerMesDelTrimestre = mesesDelPrimerTrimestre[0]; - -console.log(primerMesDelTrimestre); // 'Enero' - -// También puedo mostrar un elemento por la terminal directamente, -// sin necesidad de guardarlo en una variable -// En este caso vamos a mostrar el segundo elemento del array, por lo que usamos -// el índice `1` (recordá que el primer elemento siempre es el `0`) -console.log(mesesDelPrimerTrimestre[1]); // 'Febrero' -``` - -Los arrays tienen una propiedad especial llamada `length` que nos devuelve la cantidad de elementos que tiene. - -```javascript -var misMascotas = ['Loro', 'Perro', 'Gato']; - -console.log(misMascotas.length); // 3 -``` - -> Esta propiedad es muy útil cuando queremos saber la cantidad de elementos de un array del que no conocemos su contenido. - -## Tips - -1. Los arrays también son usualmente llamados **_colecciones_**. -1. Los índices de un array pueden especificarse por medio de expresiones que devuelvan un número y valores de variables. Veamos algunos ejemplos: - - ```javascript - var paises = [ - 'Argentina', // Índice 0 - 'Brasil', // Índice 1 - 'Chile' // Índice 2 - ]; - - // Muestro el primer elemento del array - console.log(paises[0]); // 'Argentina' - console.log(paises[0 + 2]); // 'Chile' - - // Declaro una variable para referirme al índice 1 - var indiceDeBrasil = 1; - var brasil = paises[indiceDeBrasil]; - - console.log(brasil); // 'Brasil' - ``` - -1. Haciendo uso de la propiedad `length`, podemos acceder al último elemento de un array restándole 1. Siguiendo con el ejemplo anterior `misMascotas[misMascotas.lenght - 1]` nos devuelve `'Gato'`. ¿Por qué restamos 1? Porque los índices empiezan por `0`. Entonces, necesitamos restar 1 para referirnos a la posición correcta. -1. Podés crear arrays usando variables. - - ```javascript - // Declaro y asigno algunas variables - var miPostreFavorito = 'Flan con dulce de leche'; - var miAnimalFavorito = 'Cocodrilo'; - var miColorFavorito = 'Negro'; - - // Declaro un array que va a tener como valores las variables que declaré - // antes + un string que dice `Dormir mucho` - var cosasQueMeGustanMucho = [ - miPostreFavorito, - miAnimalFavorito, - miColorFavorito, - 'Dormir mucho' - ]; - - // Muestro el array por la terminal - console.log(cosasQueMeGustanMucho); - ``` - -## Ejercicios - -1. Dado el siguiente array de meses del año: - - ```javascript - var meses = [ - 'Enero', // índice `0` - 'Febrero', - 'Marzo', - 'Abril', - 'Mayo', - 'Junio', - 'Julio', - 'Agosto', - 'Septiembre', - 'Octubre', - 'Noviembre', - 'Diciembre' // índice 11, equivalente a `meses.length - 1` - ]; - ``` - - Escribir un programa que: - - 1. Declare y asigne una variable que tenga como valor el **_número_** del mes de tu cumpleaños. - 1. Muestre por terminal el **_nombre_** del mes de tu cumpleaños. - -1. Dado los siguientes arrays: - - ```javascript - var meses = [ - 'Enero', - 'Febrero', - 'Marzo', - 'Abril', - 'Mayo', - 'Junio', - 'Julio', - 'Agosto', - 'Septiembre', - 'Octubre', - 'Noviembre', - 'Diciembre' - ]; - - var planetas = [ - 'Mercurio', - 'Venus', - 'Tierra', - 'Marte', - 'Saturno', - 'Jupiter', - 'Urano', - 'Neptuno', - 'Plutón' - ]; - ``` - - 1. Mostrar por la terminal la cantidad de elementos que tiene cada uno. - 1. Mostrar por la terminal el último elemento de cada array (usando la propiedad `length` que tienen los arrays). - 1. Mostrar el cuarto planeta por pantalla (`Marte`). - -1. Dado el siguiente array de nombres: - - ```javascript - var nombres = ['Sofía', 'Abril']; - var apellidos = ['Rodriguez', 'López']; - ``` - - 1. Mostrar por la terminal el primer elemento de cada array. - 1. Crear un nuevo array llamado `nombreCompleto` que contenga el segundo elemento del array `nombres` y el primer elemento del array `apellidos`. Mostrar el nuevo array por la terminal. - -1. Dado el siguiente array de participantes de una carrera y considerando que están ordenados en base al orden de llegada (el primer elemento es el primero en haber llegado): - - ```javascript - var corredores = [ - 'Margarita', // ganó la carrera - 'Juan', - 'Raquel', - 'Ezequiel', - 'Gonzalo', - 'Martina', - 'Julian' // último 🙁 - ]; - ``` - - 1. Mostrar por la terminal los 3 primeros en llegar a la meta usando índices numéricos. - 1. Crear un nuevo array llamado `losUltimos` que contenga los 2 últimos corredores en llegar (usando la propiedad `length` que tienen los arrays). Mostrar este nuevo array por la terminal. - -[Respuestas](/respuestas/08.js) - -[Continuar con Parámetros de ejecución en una aplicación Node.js](/ejercicios/conceptuales/09.md) diff --git a/ejercicios/conceptuales/09.md b/ejercicios/conceptuales/09.md deleted file mode 100644 index 05147e5..0000000 --- a/ejercicios/conceptuales/09.md +++ /dev/null @@ -1,183 +0,0 @@ -# Parámetros de Ejecución en una Aplicación Node.js - -**_Node.js_** es el entorno de ejecución de JavaScript que estuvimos usando en el transcurso de este workshop para ejecutar nuestros programas. - -```javascript -// `saludo.js` - -console.log('¡Hola Node.js!'); -``` - -```bash -# En la terminal ejecutá el siguiente comando -# Deberías ver '¡Hola Node.js!' -node saludo.js -``` - -En este módulo vamos a aprender a trabajar con **_parámetros de ejecución_** en Node.js. Entre otras cosas, esto nos va a permitir empezar a escribir programas **_genéricos_**. - -Vamos a explicar este tema en el contexto de un ejemplo: vamos a construir un programa genérico para sumar 2 números que el usuario que ejecute el programa decida cuales son. - -Siempre que estemos ejecutando un programa en el contexto de **_Node.js_**, tenemos a nuestra disposición un array que podemos obtener con `process.argv` que contiene los parámetros de ejecución de nuestro programa. - -```javascript -// `parametros.js` - -// Declaro y asigno una variable con los parámetros de ejecución de este programa -var arrayDeParametrosDeEjecucion = process.argv; - -// Muestro por la terminal el array. Deberías ver algo parecido a esto: -// [ -// '/Users/crisduran/.nvm/versions/node/v6.3.1/bin/node', -// '/Users/crisduran/Documents/CDuran/javascript-101/parametros.js' -// ] -console.log(arrayDeParametrosDeEjecucion); -``` - -```bash -# Ejecuto el programa que escribimos anteriormente en la terminal -node parametros.js -``` - -Por defecto, todos los programas que se ejecutan en Node.js reciben en `process.argv` un `array` con 2 `string` indicando: - -1. Como primer valor (`process.argv[0]`) el path en tu disco duro donde se encuentra el ejecutable de Node.js. -1. Como segundo valor (`process.argv[1]`) el path en tu disco duro donde se encuentra el archivo que estás ejecutando. - -> Esta información no nos resulta muy útil por el momento, pero tenemos que saber que existe para poder profundizar en el tema. - -## process.argv y la historia de como empezamos a escribir programas genéricos - -El punto donde esto se pone bueno es cuando te cuento que si agregás valores al final del comando que usás para ejecutar tu programa, Node.js los va a agregar en el array `process.argv` y vos vas a poder usarlos para lo que necesites. - -```javascript -// `hola.js` - -// Declaro y asigno una variable con el array de argumentos de ejecución -var parametros = process.argv; - -// Declaro una variable `nombre` que va a tener como valor el tercer elemento -// dentro del array de parámetros -var nombre = parametros[2]; - -// Muestro por la terminal un saludo -console.log('Hola', nombre); -``` - -```bash -# Hasta este módulo, veniamos ejecutando nuestros programas como `node archivo.js` -# A partir de ahora, podemos pasar parámetros a nuestros programas! - -# Deberías ver 'Hola JavaScript' -node hola.js JavaScript -``` - -Esto nos va a permitir empezar a escribir programas que no dependan de que nosotros como programadores tengamos escritos en el código los números que queremos sumar, o el nombre del usuario que queremos mostrar por la terminal. A partir de ahora, nuestro código va a operar con variables sin que conozcamos el valor que van a tener al momento de ejecución. - -Veamos un ejemplo más para intentar aclarar más esta idea: - -```javascript -// `historia.js` - -// Declaro y asigno una variable con el valor del tercer elemento -// dentro del array de argumentos de ejecución del programa -var nombre1 = process.argv[2]; - -// Hago lo mismo para el cuarto elemento -var nombre2 = process.argv[3]; - -// Muestro por la terminal los siguientes mensajes -console.log('Este archivo ha recibido 2 nombres como parámetros de ejecución'); -console.log('El primero es', nombre1); -console.log('El segundo es', nombre2); -``` - -```bash -# Deberías ver: -# 'Este archivo ha recibido 2 nombres como parámetros de ejecución' -# El primero es Juan -# El segundo es Pedro -node historia.js Juan Pedro -``` - -## Trabajando con parámetros de tipo número - -En el caso particular de los números, necesitamos aprender un detalle extra. Node.js agrega en el array `process.argv` todos los parámetros de ejecución como string. Por este motivo, los números que nosotros enviemos como argumentos de ejecución los vamos a tener que convertir a tipo de dato numérico antes de operar con ellos mediante la función `Number`. - -> La función `Number` recibe como parámetro un string y devuelve el número que representa. Por ejemplo: `Number('20')` devuelve el número `20`. - -Veamos un ejemplo aplicado de todo: - -```javascript -// `suma.js` - -// Declaro y asigno 2 variables con el contenido de los parámetros -var numeroEnFormatoTexto1 = process.argv[2]; -var numeroEnFormatoTexto2 = process.argv[3]; - -// Recordá que si usás el operador de suma (+) en 2 string, los mismos -// se concatenan -console.log('Los 2 números concatenados:', numeroEnFormatoTexto1 + numeroEnFormatoTexto2); - -// Declaro 2 variables que van a tener como valor el resultado de convertir -// los parámetros de ejecución de string a número -var numero1 = Number(numeroEnFormatoTexto1); -var numero2 = Number(numeroEnFormatoTexto2); - -console.log('Los 2 números sumados:', numero1 + numero2); -``` - -```bash -# Deberías ver en la consola los siguientes mensajes: -# Los 2 números concatenados: 35 -# Los 2 números sumados: 8 -node suma.js 3 5 -``` - -## Tips - -1. Podés usar la cantidad de parámetros que quieras a la hora de ejecutar tus programas. -1. Si el valor que querés pasar contiene espacios, usá comillas para indicar que es un único valor, de lo contrario, la terminal va a creer que son muchos diferentes y los va a separar cuando cree el array `process.argv`. - - Si queremos escribir un programa que reciba mi nombre completo y mi edad - - ```bash - # Incorrecto - node mi-gran-programa.js Cristhian Javier Duran 27 - - # Correcto - node mi-gran-programa.js 'Cristhian Javier Duran' 27 - ``` - -## Ejercicios - -1. Un año de vida para las personas, representa 7 años en la vida de un perro. Escribí un programa que reciba como parámetro tu edad (no te olvides de usar la función `Number` para convertirla de string a número) y mostrá por la terminal cuantos años tendrías si fueras un perro (tu edad multiplicada por 7). -1. Escribí un programa que reciba el nombre de una persona (string) y la nota de su trabajo práctico (número). Mostrar por la terminal el mensaje adecuado dependiendo de las siguientes condiciones: - - * Si su nota es mayor a 7, mostrar: - - ```bash - # Completar los 3 puntos con los datos correspondientes - 'El/La alumno/a llamado/a ... se sacó un ...' - 'Felicitaciones por aprobar' - ``` - - * Si su nota es mayor a 4 pero menor a 7, mostrar: - - ```bash - # Completar los 3 puntos con los datos correspondientes - 'El/La alumno/a llamado/a ... se sacó un ...' - 'La próxima entrega espero un mejor trabajo' - ``` - - * Si su nota es menor a 4, mostrar: - - ```bash - # Completar los 3 puntos con los datos correspondientes - 'El/La alumno/a llamado/a ... se sacó un ...' - 'Nos vemos en Marzo' - ``` - -[Respuestas](/respuestas/09.js) - -[Continuar con Parcialito 2 :speak_no_evil:](/ejercicios/conceptuales/10.md) diff --git a/ejercicios/conceptuales/10.md b/ejercicios/conceptuales/10.md deleted file mode 100644 index e86fcf1..0000000 --- a/ejercicios/conceptuales/10.md +++ /dev/null @@ -1,29 +0,0 @@ -# Parcialito 2 🙊 - -Vamos a plantear el siguiente ejercicio para afianzar todo lo que venimos aprendiendo 💪🏼 - -1. Vamos a crear una calculadora (😮) que reciba como parámetro: - - * La operación que queremos que realice (`sumar` o `restar`). - * 2 números para que pueda realizar la cuenta. - - ```bash - # Ejemplos de como vamos a ejecutar nuestra calculadora por la terminal - - # Sumar 2 números - node calculadora.js sumar 10 50 - - # Restar 2 números - node calculadora.js restar 20 5 - ``` - - La calculadora va a mostrar por la terminal: - - ```bash - 'La operación que se solicitó fue: ...' - 'El resultado es: ...' - ``` - -[Respuestas](/respuestas/10.js) - -[Continuar con Objetos](/ejercicios/conceptuales/11.md) diff --git a/ejercicios/conceptuales/11.md b/ejercicios/conceptuales/11.md deleted file mode 100644 index 66e966a..0000000 --- a/ejercicios/conceptuales/11.md +++ /dev/null @@ -1,109 +0,0 @@ -# Objetos - -Nuestra lista de tipos de datos conocidos se compone de números, string, booleanos, `undefined`, y arrays. En este módulo vamos a aprender uno nuevo: objetos. - -Un `objeto` es una colección de nombres y valores que denominamos **_propiedades_**. Nos van a servir para modelar información tal como lo hacemos en la vida real. - -Para crear un objeto basta con usar `{}` (llaves) y pares opcionales de nombres y valores para asignar propiedades al objeto en cuestión. Veamos un ejemplo: - -```javascript -// Declaro la variable nicolas y le asigno un objeto que describe -// las caracteristicas de esa persona -var nicolas = { - // Usamos la , (coma) al final para indicar que vamos a agregar más - // propiedades - nombreCompleto: 'Nicolas López', - altura: 2, - edad: 18, - peso: 79, - colorFavorito: 'Azul' -}; - -// Mostramos por la terminal el objeto `nicolas` -console.log(nicolas); -``` - -Podríamos decir que una propiedad es una `variable` asociada a un `objeto`. Estas propiedades funcionan igual que las variables que ya conocemos, solo que "viven en el contexto del objeto". Esto quiere decir que vamos a poder realizar operaciones y asignaciones como estamos acostumbrados usando la notación de . (puntos). - -```javascript -// Declaro y asigno una variable llamada `miGato` con la propiedad nombre -// equivalente a 'Tom' -var miGato = { - nombre: 'Tom' -}; - -// Muestro por pantalla solo el nombre de mi gato -console.log(miGato.nombre); // 'Tom' - -// Asigno un nuevo nombre a mi gato -// (No sé por que motivo elegiría cambiárselo jaja) -miGato.nombre = 'Jerry'; - -// Muestro por pantalla el nuevo nombre de mi gato -console.log(miGato.nombre); // 'Jerry' -``` - -## Tips - -1. También podemos crear objetos de la siguiente manera: - - ```javascript - var miGato = new Object({ - nombre: 'Tom' - }); - ``` - -1. Las propiedades de un objeto pueden contener todos los tipos de datos que ya aprendiste: números, string, booleanos, arrays e incluso otros objetos. Ejemplo: - - ```javascript - var planeta = { - nombre: 'Tierra', // propiedad de tipo string - hayVida: true, // propiedad booleana - numeroDeContinentes: 5, // propiedad numérica - nombreDeContinentes: [ // propiedad de tipo array - 'America', - 'Europa', - 'Asia', - 'Oceanía', - 'Africa' - ], - características: { // propiedad de tipo objeto - hayAgua: true, - cantidadDeLunas: 1 - } - }; - ``` - -1. Podés usar objetos como elementos de un array, como lo hiciste con los demás tipos de datos: - - ```javascript - var usuarios = [ - { - nombre: 'Juan', - edad: 20 - }, - { - nombre: 'Pedro', - edad: 30 - }, - { - nombre: 'Brian', - edad: 40 - } - ]; - ``` - -## Ejercicios - -1. Declará y asigná un objeto llamado `miRecetaMatadora` que contenga 3 propiedades: `titulo` (string), `porciones` (número) e `ingredientes` (array de string). Mostrar el objeto creado en la terminal -1. Escribí un programa que: - - * Declare 3 objetos llamados `persona1`, `persona2` y `persona3` con las siguientes propiedades: `nombre` (string) y `edad` (numero) - * Declare un array llamado `usuarios` y use los 3 objetos anteriormente creados como elementos. - * Muestre por la terminal la cantidad de usuarios del array. - * Muestre por la terminal la edad del segundo elemento del array. - * Muestre por la terminal el nombre del primer elemento del array. - -[Respuestas](/respuestas/11.js) - -[Continuar con Links para seguir aprendiendo](https://github.com/javascript-101/javascript-101#links-extras-para-seguir-aprendiendo) diff --git a/respuestas/07.js b/respuestas/07.js deleted file mode 100644 index 1c6902e..0000000 --- a/respuestas/07.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - Juan y Pedro son hermanos. La semana pasada tuvieron una prueba en el colegio y hoy la profesora les dio la nota. Escribir un programa que: - 1. Declare y asigne 2 variables de tipo número: una con la nota de Juan (`10`) y otra con la nota de Pedro (`8`). Nombrá a las variables como más te guste. - 1. Mostrar por la terminal el valor más grande de los 2. - 1. Considerá el caso de que pueden ser iguales 🙊. Si eso ocurre, mostrar el mensaje: `'Ambos hijos tuvieron la misma nota'`. - - Casos que te pueden ayudar para probar: - - 1. Si Juan se saca un `4` y Pedro un `6`. Mostrar `6`. - 1. Si Juan se saca un `9` y Pedro un `8`. Mostrar `9`. - 1. Si ambos se sacan un `7`, mostrar `'Ambos hijos tuvieron la misma nota'`. -*/ - -var notaDeJuan = 10; -var notaDePedro = 8; - -if (notaDeJuan > notaDePedro) { - console.log(notaDeJuan); -} else if (notaDePedro > notaDeJuan) { - console.log(notaDePedro); -} else { - console.log('Ambos hijos tuvieron la misma nota'); -} - -/* - Una farmacia hace el 15% de descuento a sus clientes si la compra es mayor a 100 pesos. Escribir un programa que dado el monto de una compra como valor numérico, diga cuanto debe abonar el cliente aplicando el descuento si es necesario. - - > Tip: Para obtener el porcentaje de un número podés usar la siguiente fórmula: `número * descuento / 100` (La famosa regla de 3 simple 😮). - - Si el monto de compra es de 500 pesos, ¿cuánto debe pagar el cliente? - - Casos que te pueden ayudar para probar: - - 1. Si el monto de la compra es `55`. Mostrar `55` (Es menor a 100, por lo que no se aplica descuento). - 1. Si el monto de la compra es 200. Mostrar `170`, equivalente a `200 - descuento`. Para calcular el descuento ya te dí una pista 😉. -*/ - -var compra = 500; - -if (compra > 100) { - var descuento = compra * 15 / 100; - - console.log(compra - descuento); -} else { - console.log(compra); -} diff --git a/respuestas/08.js b/respuestas/08.js deleted file mode 100644 index a623974..0000000 --- a/respuestas/08.js +++ /dev/null @@ -1,173 +0,0 @@ -/* - Dado el siguiente array de meses del año: - - ```javascript - var meses = [ - 'Enero', // índice `0` - 'Febrero', - 'Marzo', - 'Abril', - 'Mayo', - 'Junio', - 'Julio', - 'Agosto', - 'Septiembre', - 'Octubre', - 'Noviembre', - 'Diciembre' // índice 11, equivalente a `meses.length - 1` - ]; - ``` - - Escribir un programa que: - - 1. Declare y asigne una variable que tenga como valor el **_número_** del mes de tu cumpleaños. - 1. Muestre por terminal el **_nombre_** del mes de tu cumpleaños. -*/ - - var meses = [ - 'Enero', // índice `0` - 'Febrero', - 'Marzo', - 'Abril', - 'Mayo', - 'Junio', - 'Julio', - 'Agosto', - 'Septiembre', - 'Octubre', - 'Noviembre', - 'Diciembre' // índice 11, equivalente a `meses.length - 1` -]; - -var numeroDelMesDeMiCumpleanos = 5; -var nombreDelMesDeMiCumpleanos = meses[5 - 1]; - -console.log(nombreDelMesDeMiCumpleanos); - -/* - Dado los siguientes arrays: - - ```javascript - var meses = [ - 'Enero', - 'Febrero', - 'Marzo', - 'Abril', - 'Mayo', - 'Junio', - 'Julio', - 'Agosto', - 'Septiembre', - 'Octubre', - 'Noviembre', - 'Diciembre' - ]; - - var planetas = [ - 'Mercurio', - 'Venus', - 'Tierra', - 'Marte', - 'Saturno', - 'Jupiter', - 'Urano', - 'Neptuno', - 'Plutón' - ]; - ``` - - 1. Mostrar por la terminal la cantidad de elementos que tiene cada uno. - 1. Mostrar por la terminal el último elemento de cada array (usando la propiedad `length` que tienen los arrays). - 1. Mostrar el cuarto planeta por pantalla (`Marte`). -*/ - -var meses = [ - 'Enero', - 'Febrero', - 'Marzo', - 'Abril', - 'Mayo', - 'Junio', - 'Julio', - 'Agosto', - 'Septiembre', - 'Octubre', - 'Noviembre', - 'Diciembre' -] -var planetas = [ - 'Mercurio', - 'Venus', - 'Tierra', - 'Marte', - 'Saturno', - 'Jupiter', - 'Urano', - 'Neptuno', - 'Plutón' -]; - -console.log(meses.length); -console.log(planetas.length); - -console.log(meses[meses.length - 1]); -console.log(planetas[planetas.length - 1]); - -console.log(planetas[3]); - -/* - 1. Dado el siguiente array de nombres: - - ```javascript - var nombres = ['Sofía', 'Abril']; - var apellidos = ['Rodriguez', 'López']; - ``` - - 1. Mostrar por la terminal el primer elemento de cada array. - 1. Crear un nuevo array llamado `nombreCompleto` que contenga el segundo elemento del array `nombres` y el primer elemento del array `apellidos`. Mostrar el nuevo array por la terminal. -*/ - -var nombres = ['Sofía', 'Abril']; -var apellidos = ['Rodriguez', 'López']; - -console.log(nombres[0]); -console.log(apellidos[0]); - -var nombreCompleto = [nombres[1], apellidos[0]]; -console.log(nombreCompleto); - -/* - 1. Dado el siguiente array de participantes de una carrera y considerando que están ordenados en base al orden de llegada (el primer elemento es el primero en haber llegado): - - ```javascript - var corredores = [ - 'Margarita', // ganó la carrera - 'Juan', - 'Raquel', - 'Ezequiel', - 'Gonzalo', - 'Martina', - 'Julian' // último 🙁 - ]; - ``` - - 1. Mostrar por la terminal los 3 primeros en llegar a la meta usando índices numéricos. - 1. Crear un nuevo array llamado `losUltimos` que contenga los 2 últimos corredores en llegar (usando la propiedad `length` que tienen los arrays). Mostrar este nuevo array por la terminal. -*/ - -var corredores = [ - 'Margarita', // ganó la carrera - 'Juan', - 'Raquel', - 'Ezequiel', - 'Gonzalo', - 'Martina', - 'Julian' // último 🙁 -]; - -console.log(corredores[0]); -console.log(corredores[1]); -console.log(corredores[2]); - -var losUltimos = [corredores[corredores.length - 1], corredores[corredores.length - 2]]; -console.log(losUltimos); diff --git a/respuestas/09.js b/respuestas/09.js deleted file mode 100644 index a2d65e8..0000000 --- a/respuestas/09.js +++ /dev/null @@ -1,51 +0,0 @@ -/* - Un año de vida para las personas, representa 7 años en la vida de un perro. Escribí un programa que reciba como parámetro tu edad (no te olvides de usar la función `Number` para convertirla de string a número) y mostrá por la terminal cuantos años tendrías si fueras un perro (tu edad multiplicada por 7). -*/ - -var miEdadComoString = process.argv[2]; -var miEdad = Number(miEdadComoString); -var miEdadEnAnosPerrunos = miEdad * 7; - -console.log(miEdadEnAnosPerrunos); - -/* - Escribí un programa que reciba el nombre de una persona (string) y la nota de su trabajo práctico (número). Mostrar por la terminal el mensaje adecuado dependiendo de las siguientes condiciones: - - * Si su nota es mayor a 7, mostrar: - - ```bash - # Completar los 3 puntos con los datos correspondientes - 'El/La alumno/a llamado/a ... se sacó un ...' - 'Felicitaciones por aprobar' - ``` - - * Si su nota es mayor a 4 pero menor a 7, mostrar: - - ```bash - # Completar los 3 puntos con los datos correspondientes - 'El/La alumno/a llamado/a ... se sacó un ...' - 'La próxima entrega espero un mejor trabajo' - ``` - - * Si su nota es menor a 4, mostrar: - - ```bash - # Completar los 3 puntos con los datos correspondientes - 'El/La alumno/a llamado/a ... se sacó un ...' - 'Nos vemos en Marzo' - ``` -*/ - -var persona = process.argv[2]; -var notaComoString = process.argv[3]; -var nota = Number(notaComoString); - -console.log('El/La alumno/a llamado/a', persona, ' se sacó un', nota); - -if (nota > 7) { - console.log('Felicitaciones por aprobar'); -} else if (nota > 4) { - console.log('La próxima entrega espero un mejor trabajo.'); -} else { - console.log('Nos vemos en Marzo'); -} diff --git a/respuestas/10.js b/respuestas/10.js deleted file mode 100644 index b6048af..0000000 --- a/respuestas/10.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - Vamos a crear una calculadora (😮) que reciba como parámetro: - - * La operación que queremos que realice (`sumar` o `restar`). - * 2 números para que pueda realizar la cuenta. - - ```bash - # Ejemplos de como vamos a ejecutar nuestra calculadora por la terminal - - # Sumar 2 números - node calculadora.js sumar 10 50 - - # Restar 2 números - node calculadora.js restar 20 5 - ``` - - La calculadora va a mostrar por la terminal: - - ```bash - 'La operación que se solicitó fue: ...' - 'El resultado es: ...' - ``` -*/ - -var operacion = process.argv[2]; -var numero1ComoString = process.argv[3]; -var numero2ComoString = process.argv[4]; -var numero1 = Number(numero1ComoString); -var numero2 = Number(numero2ComoString); - -console.log('La operación que se solicitó fue:', operacion); - -if (operacion === 'sumar') { - console.log('El resultado es', numero1 + numero2); -} else { - console.log('El resultado es', numero1 - numero2); -} diff --git a/respuestas/11.js b/respuestas/11.js deleted file mode 100644 index d965384..0000000 --- a/respuestas/11.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - Declará y asigná un objeto llamado `miRecetaMatadora` que contenga 3 propiedades: `titulo` (string), `porciones` (número) e `ingredientes` (array de string). Mostrar el objeto creado en la terminal -*/ - -var miRecetaMatadora = { - titulo: 'Polenta con queso', - porciones: 4, - ingredientes: [ - 'Polenta', - 'Queso fresco', - 'Queso rallado' - ] -}; - -console.log(miRecetaMatadora); - -/* - Escribí un programa que: - - * Declare 3 objetos llamados `persona1`, `persona2` y `persona3` con las siguientes propiedades: `nombre` (string) y `edad` (numero). - * Declare un array llamado `usuarios` y use los 3 objetos anteriormente creados como elementos. - * Muestre por la terminal la cantidad de usuarios del array. - * Muestre por la terminal la edad del segundo elemento del array. - * Muestre por la terminal el nombre del primer elemento del array. -*/ - -var persona1 = { - nombre: 'Juan', - edad: 10 -}; -var persona2 = { - nombre: 'Pedro', - edad: 20 -}; -var persona3 = { - nombre: 'Martin', - edad: 30 -}; -var usuarios = [persona1, persona2, persona3]; - -console.log(usuarios.length); -console.log(usuarios[1].edad); -console.log(usuarios[0].nombre); diff --git a/trabajo-final/README.md b/trabajo-final/README.md deleted file mode 100755 index 26ab5c4..0000000 --- a/trabajo-final/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# JavaScript 101 - -Este workshop es una introducción a la programación usando JavaScript. - -## Temas - -1. ¿Qué es Programar? -2. ¿Qué es JavaScript? -3. Historia de JS -4. Escribir y ejecutar nuestro primer programa (Browser, Consola) -5. Variables -6. Tipos de datos -7. Input & output -8. Operadores -9. Estructuras de control -10. Valores verdaderos y falsos -11. Estructuras de repetición -12. Funciones diff --git a/trabajo-final/ejercicios/ej01.md b/trabajo-final/ejercicios/ej01.md deleted file mode 100755 index 0aff668..0000000 --- a/trabajo-final/ejercicios/ej01.md +++ /dev/null @@ -1,19 +0,0 @@ -# Correr nuestro primer script - -1. Crear un archivo que se llame `ej01.js` y escribir el código necesario para mostrar el siguiente mensaje en la consola: - - ```bash - 'Bienvenidos a Spotify' - ``` - - Para correr su código desde consola: - - ```bash - node ej1.js - ``` - -1. Abrir el navegador Chrome, luego las developer tools, seleccionar el tab console, copiar y pegar el código del `ej01.js` en la consola y luego ejecutarlos con enter. - -1. Escribir un comentario simple describiendo que hace el código que escribimos en el archivo `ej01.js`. - -1. Comentar el código del archivo `ej01.js` y volver a correr el script desde la consola. diff --git a/trabajo-final/ejercicios/ej02.md b/trabajo-final/ejercicios/ej02.md deleted file mode 100755 index 05e860d..0000000 --- a/trabajo-final/ejercicios/ej02.md +++ /dev/null @@ -1,46 +0,0 @@ -# Declarar variables y asignar valores - -1. Crear un nuevo archivo llamado `ej02.js`. - -1. Declarar una variable que se llame `nombreDeCancion` y asignar el siguiente valor. - - ```bash - 'En la ciudad de la furia' - ``` - -1. Declarar una variable que se llame `autor` y asignar el siguiente valor. - - ```bash - 'Soda Stereo' - ``` - -1. Mostrar en la consola el valor que contiene las variables `nombreDeCancion` y `autor` utilizando la función `console.log()`. - - Un ayudin: - - ```javascript - console.log(variable); - ``` - -1. Mostrar en la consola las dos variables anteriores utilizando un solo llamado a `console.log()`. - - Somos muy buenos, otro ayudin: - - ```javascript - console.log(variable1, variable2); - ``` - -1. Mostrar en la consola el contenido de cada variable y agregar un mensaje descriptivo para cada una. - - Somos muy muy buenos, otro ayudin: - - ```javascript - console.log('descripción: ', variable); - ``` - - Formato esperado: - - ```bash - Canción: En la ciudad de la furia - Autor: Soda Stereo - ``` diff --git a/trabajo-final/ejercicios/ej03.md b/trabajo-final/ejercicios/ej03.md deleted file mode 100755 index 505e385..0000000 --- a/trabajo-final/ejercicios/ej03.md +++ /dev/null @@ -1,50 +0,0 @@ -# Declarar variables y asignar distintos tipos de valores o tipos de datos - -1. Crear un nuevo archivo llamado `ej03.js`. - -1. Declarar una variable que se llame `nombreDeCancion` y asignar el siguiente valor. - - ```bash - 'En la ciudad de la furia' - ``` - -1. Declarar una variable que se llame `autor` y asignar el siguiente valor. - - ```bash - 'Soda Stereo' - ``` - -1. Declarar una variable que se llame `duracion` y asignar el siguiente valor. - - ```bash - 345 - ``` - -1. Declarar una variable que se llame `reproducir` y asignar el siguiente valor. - - ```bash - false - ``` - -1. Declarar una variable que se llame `favorita` y asignar el siguiente valor. - - ```bash - true - ``` - -1. Mostrar en la consola el contenido de cada variable y agregar un mensaje descriptivo para cada una. - - Somos muy muy buenos, otro ayudin: - ```javascript - console.log('descripción: ', variable); - ``` - - Formato esperado: - - ```bash - Canción: En la ciudad de la furia - Autor: Soda Stereo - Duración en segundos: 345 - Reproducir: false - Canción favorita: true - ```` diff --git a/trabajo-final/ejercicios/ej04.md b/trabajo-final/ejercicios/ej04.md deleted file mode 100755 index 1ac9667..0000000 --- a/trabajo-final/ejercicios/ej04.md +++ /dev/null @@ -1,41 +0,0 @@ -# Declarar un objeto y propiedades - -1. Crear un nuevo archivo llamado `ej04.js`. - -1. Declarar una variable del tipo objeto, con el nombre de `cancion` y que tenga las siguientes propiedades: - - ```javascript - nombre: 'En la ciudad de la furia' - autor: 'Soda Stereo' - duracion: 345 - reproducir: false - favorita: true - ``` - -1. Imprimir en consola el objeto `cancion` completo con todas sus propiedades. - -1. Imprimir las propiedades del objeto `cancion` de la siguiente manera: - - Formato esperado: - - ```bash - Canción: En la ciudad de la furia - Autor: Soda Stereo - Duración en segundos: 345 - Reproducir: false - Canción favorita: true - ``` - -1. Agregar una nueva propiedad al objeto `cancion` de forma dinámica que se llame `album` y asignar el siguiente valor: - - ```bash - 'Me Verás Volver (Hits & Más)' - ``` - -1. Imprimir todas las propiedades del objeto `cancion` nuevamente. - -1. Imprimir el valor de la propiedad `album` del objeto `cancion`. - - ```bash - Album: Me Verás Volver (Hits & Más) - ``` diff --git a/trabajo-final/ejercicios/ej05.md b/trabajo-final/ejercicios/ej05.md deleted file mode 100755 index 9d37f38..0000000 --- a/trabajo-final/ejercicios/ej05.md +++ /dev/null @@ -1,24 +0,0 @@ -# Declarar un array y asignar valores - -1. Crear un nuevo archivo llamado `ej05.js`. - -1. Declarar una variable del tipo array, con el nombre `canciones` y que tenga los siguientes valores: - - ```bash - 'En la ciudad de la furia' - 'Trátame suavemente' - 'Nada Personal' - 'Signos' - ``` - -1. Imprimir en consola el array `canciones`. - -1. Impimir en la consola cada una de las canciones del array `canciones` utilizando índices numéricos. - -1. Imprimir en la consola la cantidad de canciones que hay en el array: - - Formato esperado: - - ```bash - Cantidad de canciones: 4 - ``` diff --git a/trabajo-final/ejercicios/ej06.md b/trabajo-final/ejercicios/ej06.md deleted file mode 100755 index 843df38..0000000 --- a/trabajo-final/ejercicios/ej06.md +++ /dev/null @@ -1,25 +0,0 @@ -# Declarar un array con distintos tipos de valores - -1. Crear un nuevo archivo llamado `ej06.js`. - -1. Declarar una variable del tipo array con el nombre `cancion` con los siguientes valores. - - ```bash - 'En la ciudad de la furia' - 'Soda Stereo' - 345 - false - true - ``` - -1. Imprimir en la consola todos los valores del array `cancion`. - -1. Imprimir todos los valores del array `cancion` con el siguiente formato: - - ```bash - Canción: En la ciudad de la furia - Autor: Soda Stereo - Duración en segundos: 345 - Reproducir: false - Canción favorita: true - ``` diff --git a/trabajo-final/ejercicios/ej07.md b/trabajo-final/ejercicios/ej07.md deleted file mode 100755 index ff4dac9..0000000 --- a/trabajo-final/ejercicios/ej07.md +++ /dev/null @@ -1,37 +0,0 @@ -# Declarar un array con objetos - -1. Crear un nuevo archivo llamado `ej07.js`. - -1. Declarar un array con el nombre `canciones` con los siguientes valores. - - ```javascript - { - nombre: 'En la ciudad de la furia', - duracion: 345 - } - - { - nombre: 'Nada Personal', - duracion: 300 - } - ``` - -1. Imprimir en la consola todos los valores del array `canciones`. - -1. Imprimir en consola el primer objeto del array `canciones`. - -1. Imprimir en consola el segundo objeto del array `canciones`. - -1. Imprimir en consola las propiedades del primer objeto del array canciones con el siguiente formato: - - ```bash - Canción: En la ciudad de la furia - Duración en segundos: 345 - ``` - -1. Imprimir en consola las propiedades del segundo objeto del array canciones con el siguiente formato: - - ```bash - Canción: Nada Personal - Duración en segundos: 300 - ``` diff --git a/trabajo-final/ejercicios/ej08.md b/trabajo-final/ejercicios/ej08.md deleted file mode 100755 index 4d3539e..0000000 --- a/trabajo-final/ejercicios/ej08.md +++ /dev/null @@ -1,52 +0,0 @@ -# Objetos anidados - -1. Crear un nuevo archivo llamado `ej08.js`. - -1. Declarar un objeto con el nombre de `autor` con las siguientes propiedades y valores: - - ```javascript - nombre: 'Soda Stereo' - integrantes: [ - 'Gustavo Cerati', - 'Zeta Bosio', - 'Charly Alberti' - ] - ``` - -1. Declarar un objeto con el nombre `cancion1` con las siguientes propiedades y valores: - - ```javascript - nombre: 'En el septimo día' - duracion: 345 - ``` - -1. Declarar un objeto con el nombre `cancion2` con las siguientes propiedades y valores: - - ```javascript - nombre: 'Canción Animal' - duracion: 260 - ``` - -1. Declarar un objeto con el nombre `cancion3` con las siguientes propiedades y valores: - - ```javascript - nombre: 'Té para 3' - duracion: 180 - ``` - -1. Declarar un objeto con el nombre de `disco` con los siguientes atributos: - - ```javascript - nombre: 'Canción Animal' - autor: // (asignar la variable autor) - canciones: // (asignar un array con las canciones creadas anteriormente) - ``` - -1. Imprimir en pantalla los siguientes datos: - - ```bash - Nombre del disco: Canción Animal - Nombre del autor: Soda Stereo - Integrantes: ['Gustavo Cerati', 'Zeta Bosio', 'Charly Alberti'] - Canciones: ['En el septimo día', 'Canción Animal', 'Té para 3'] - ``` diff --git a/trabajo-final/ejercicios/ej09.md b/trabajo-final/ejercicios/ej09.md deleted file mode 100755 index d7a73d3..0000000 --- a/trabajo-final/ejercicios/ej09.md +++ /dev/null @@ -1,16 +0,0 @@ -# Ingresar datos desde la consola - -1. Crear un nuevo archivo llamado `ej09.js`. - -1. Copiar y pegar el siguiente código - - ```javascript - var argumentos = process.argv; - console.log(argumentos); - ``` - -1. Ejecutar este script con el siguiente comando - - ```bash - node ej09.js 'aguante soda stereo y javascript' 'javascript 101' - ``` diff --git a/trabajo-final/ejercicios/ej10.md b/trabajo-final/ejercicios/ej10.md deleted file mode 100755 index 60b44a3..0000000 --- a/trabajo-final/ejercicios/ej10.md +++ /dev/null @@ -1,26 +0,0 @@ -# Ingresar datos desde la consola - -1. Crear un nuevo archivo llamado `ej10.js`. - -1. Copiar y pegar el siguiente código - - ```javascript - var argumentos = process.argv; - ``` - -1. Declarar una variable con el nombre `nombre` y asignar el tercer elemento de la colección argumentos (recordar que los primeros 2 argumentos no nos interesan, por eso no los usamos). - -1. Declarar una variable con el nombre `edad` y asignar el cuarto elemento de la collección argumentos. - -1. Imprimir en consola el contenido de las variables `nombre` y `edad` con el siguiente formato: - - ```bash - Nombre: # mostrar el valor de la variable `nombre` - Edad: # mostrar el valor de la variable `edad` - ``` - -1. Ejecutar este script con el siguiente comando - - ```bash - node ej10.js 'Juan' 20 - ``` diff --git a/trabajo-final/ejercicios/ej11.md b/trabajo-final/ejercicios/ej11.md deleted file mode 100755 index 76f5a58..0000000 --- a/trabajo-final/ejercicios/ej11.md +++ /dev/null @@ -1,23 +0,0 @@ -# Operadores aritméticos - -1. Crear un nuevo archivo llamado `ej11.js`. - -1. Declarar una variable con el nombre `resultado` y asignarle el siguiente valor. - - ```bash - 2 + 6 - ``` - -1. Imprimir en consola el contenido de la variable `resultado`. - -1. Declarar 2 variables con los nombres `numero1` y `numero2`. - -1. Asignar el valor `4` a la variable `numero1` y `5` a la variable `numero2`. - -1. Imprimir en consola el resultado de las siguientes operaciones: - - ```bash - numero1 + numero2 - numero1 * numero2 - numero2 - numero1 - ``` diff --git a/trabajo-final/ejercicios/ej12.md b/trabajo-final/ejercicios/ej12.md deleted file mode 100755 index 65af921..0000000 --- a/trabajo-final/ejercicios/ej12.md +++ /dev/null @@ -1,33 +0,0 @@ -# Operadores aritméticos - -1. Crear un nuevo archivo llamado `ej12.js`. - -1. Declarar una variable con el nombre `duracion` y asignarle el siguiente valor. - - ```bash - 345 - ``` - -1. Ejecutar la siguiente sentencia - - ```javascript - duracion++ - ``` - -1. Imprimir en consola el valor de la variable `duracion` (Si todo salio bien deberías ver `346`). - -1. Ejecutar la siguiente sentencia 2 veces - - ```javascript - duracion-- - ``` - -1. Imprimir en consola el valor de la variable `duracion` (Si todo salio bien deberías ver `344`). - -1. Incrementar la variable `duracion` en `20` - -1. Imprimir en consola el valor de la variable `duracion` (Si todo salio bien deberías ver `364`). - -1. Reducir la variable `duracion` en `19` - -1. Imprimir en consola el valor de la variable `duracion`. (si todo salio bien deberías ver `345` nuevamente) diff --git a/trabajo-final/ejercicios/ej13.md b/trabajo-final/ejercicios/ej13.md deleted file mode 100755 index 4d86d33..0000000 --- a/trabajo-final/ejercicios/ej13.md +++ /dev/null @@ -1,65 +0,0 @@ -# Operadores de comparación simple y estricta - -1. Crear un nuevo archivo llamado `ej13.js`. - -1. Imprimir en pantalla el resultado de la siguiente operación: - - ```javascript - 2 == 2 - ``` - -1. Imprimir en pantalla el resultado de la siguiente operación: - - ```javascript - 'papa' == 'papa' - ``` - -1. Imprimir en pantalla el resultado de la siguiente operación: - - ```javascript - 2 != 2 - ``` - -1. Imprimir en pantalla el resultado de la siguiente operación: - - ```javascript - 2 != 3 - ``` - -1. Imprimir en pantalla el resultado de la siguiente operación: - - ```javascript - 2 == "2" - ``` - -1. Imprimir en pantalla el resultado de la siguiente operación: - - ```javascript - 2 === "2" - ``` - -1. Declarar 2 variables con los nombres `duracion1` y la otra como `duracion2`. - -1. Asignar el valor `345` a la variable `duracion1` y `400` a `duracion2`. - -1. Imprimir en pantalla si `duracion1` es más grande que `duracion2`. - -1. Imprimir en pantalla si `duracion2` es más grande que `duracion1`. - -1. Imprimir en pantalla si `duracion1` es más chica que `duracion2`. - -1. Imprimir en pantalla si `duracion1` y `duracion2` son iguales. - -1. Declarar una variables con el nombre `nombreDeCancion1` y asignarle el siguiente valor: - - ```bash - 'Canción Animal' - ``` - -1. Declarar una variables con el nombre `nombreDeCancion2` y asignarle el siguiente valor: - - ```bash - 'En el septimo día' - ``` - -1. Imprimir en pantalla si son las mismas canciones. diff --git a/trabajo-final/ejercicios/ej14.md b/trabajo-final/ejercicios/ej14.md deleted file mode 100755 index ff5a813..0000000 --- a/trabajo-final/ejercicios/ej14.md +++ /dev/null @@ -1,27 +0,0 @@ -# Operadores lógicos - -1. Crear un nuevo archivo llamado `ej14.js`. - -1. Declarar una variable con el nombre `duracion1` y asignar el siguiente valor: - - ```bash - 345 - ``` - -1. Declarar una variable con el nombre `duracion2` y asignar el siguiente valor: - - ```bash - 400 - ``` - -1. Declarar una variable con el nombre `duracion3` y asignar el siguiente valor: - - ```bash - 200 - ``` - -1. Imprimir en consola si `duracion1` es mayor que `duracion3` y `duracion3` es más chica que `duracion2`. - -1. Imprimir en consola si `duracion1` es menor que `duracion3` y `duracion3` es más chica que `duracion2`. - -1. Imprimir en consola si `duracion1` es menor que `duracion3` o `duracion3` es más chica que `duracion2`. diff --git a/trabajo-final/ejercicios/ej15.md b/trabajo-final/ejercicios/ej15.md deleted file mode 100755 index 454b51f..0000000 --- a/trabajo-final/ejercicios/ej15.md +++ /dev/null @@ -1,65 +0,0 @@ -# Estructuras de control - -1. Crear un nuevo archivo llamado `ej15.js`. - -1. Declarar una variable con el nombre `usuario` y el siguiente valor: - - ```bash - javascript101 - ``` - -1. Imprimir en pantalla un mensaje de bienvenida si el contenido de la variable `usuario` es igual al usuario esperado: - - ```javascript - usuario esperado: 'javascript101' - mensaje de bienvenida: 'Bienvenido javascript101 a spotify' - ``` - -1. Copiar y pegar la estructura anterior. - -1. Imprimir en pantalla un mensaje de error si el contenido de la variable `usuario` no es igual al usuario esperado (`if`/`else`). - - ```javascript - usuario esperado: 'ruby101' - mensaje de error: 'Usuario incorrecto' - ``` - -1. Declarar una variable con el nombre `duracion` y asignar el siguiente valor: - - ```bash - 345 - ``` - -1. Declarar una variable con el nombre `mensaje` - -1. Utilizar un operador ternario para asignar un valor en base a una condición. Luego, imprimir el contenido de la variable `mensaje` en la consola. - - ```bash - condicion: duracion > 300 - si es verdadero: 'Esta canción es muy larga' - si es falso: 'Esta cancion no es muy larga' - ``` - -1. Declarar una variable con el nombre `password` y asignar el siguiente valor: - - ```bash - 1234 - ```` - -1. Crear una estructura de control para validar si el nombre del usuario y el password son los esperados: - - ```bash - usuario esperado: 'javascript101' - password esperado: 1234 - mensaje de bienvenida: 'Bienvenido javascript101 a spotify' - mensaje de error: 'Usuario incorrecto' - ``` - -1. Declarar una variable del tipo objeto con el nombre `usuario1` y los siguientes propiedades. - - ```bash - nombre: 'javascript101' - password: 1234 - ``` - -1. Copiar y modificar la estructura del ejemplo 10 utilizando ahora el objeto `usuario1`. diff --git a/trabajo-final/ejercicios/ej16.md b/trabajo-final/ejercicios/ej16.md deleted file mode 100755 index 1eb3b6d..0000000 --- a/trabajo-final/ejercicios/ej16.md +++ /dev/null @@ -1,29 +0,0 @@ -# Estructuras de control múltiples - -1. Crear un nuevo archivo llamado `ej16.js`. - -1. Declarar una variable con el nombre `autor` y asignar el siguiente valor. - - ```bash - 'viejas locas' - ``` - -1. Escribir una estructura de control que verifique el valor de la variable `autor` y que imprima en consola el mensaje correspondiente según el valor esperado: - - ```bash - valor esperado: Soda Stereo - mensaje: 'Nos gusta soda' - - valor esperado: Amar Azul - mensaje: 'Cumbia Nena!' - - valor esperado: Viejas Locas - mensaje: 'Rock and rooolll' - -1. Agregar la opción default (`else`) en caso de que el autor no sea ninguno de los esperados. - - ```bash - mensaje: 'No te gusta la música' - ``` - -1. Cambiar el nombre de la variable `autor` y correr varias veces el script para ver los distintos mensajes (Inclusive el caso default). diff --git a/trabajo-final/ejercicios/ej17.md b/trabajo-final/ejercicios/ej17.md deleted file mode 100755 index 5e60003..0000000 --- a/trabajo-final/ejercicios/ej17.md +++ /dev/null @@ -1,18 +0,0 @@ -# Estructuras de repetición - -1. Crear un nuevo archivo llamado `ej17.js`. - -1. Imprimir en pantalla los números del `1` al `10` utilizando una estructura `for`. - -1. Imprimir en pantalla los números del `10` al `1` utilizando una estructura `for`. - -1. Declarar una variable del tipo array con el nombre de `canciones` con los siguientes valores: - - ```bash - 'En la ciudad de la furia' - 'Trátame suavemente' - 'Nada Personal' - 'Signos' - ``` - -1. Utilizar una estructura `for` para recorrer la colección de `canciones` e imprimir en pantalla cada uno de los temas (Acordate como se mostraban los elementos de una colección usando su índice y la propiedad `length`). diff --git a/trabajo-final/ejercicios/ej18.md b/trabajo-final/ejercicios/ej18.md deleted file mode 100755 index 8b5b05e..0000000 --- a/trabajo-final/ejercicios/ej18.md +++ /dev/null @@ -1,9 +0,0 @@ -# Estructuras de repetición - -1. Crear un nuevo archivo llamado `ej18.js`. - -1. Declarar una variable con el nombre `contador` y asignar el valor `1`. - -1. Utilizar una estructura `while` para imprimir en pantalla los números del `1` al `10` (Acordate del `++`). - -1. Utilizar una estructura `while` para imprimir en pantalla los números del `10` al `1` (Acordate del `--`). diff --git a/trabajo-final/ejercicios/ej19.md b/trabajo-final/ejercicios/ej19.md deleted file mode 100755 index d978fd4..0000000 --- a/trabajo-final/ejercicios/ej19.md +++ /dev/null @@ -1,9 +0,0 @@ -# Estructuras de repetición - -1. Crear un nuevo archivo llamado `ej19.js`. - -1. Declarar una variable con el nombre `contador` y asignar el valor `1`. - -1. Utilizar una estructura `do/while` para imprimir en pantalla los números del `1` al `10` (acordate del `++`). - -1. Utilizar una estructura `do/while` para imprimir en pantalla los números del `10` al `1` (acordate del `--`). diff --git a/trabajo-final/ejercicios/ej20.md b/trabajo-final/ejercicios/ej20.md deleted file mode 100755 index 9f74a88..0000000 --- a/trabajo-final/ejercicios/ej20.md +++ /dev/null @@ -1,30 +0,0 @@ -# Funciones - -1. Crear un nuevo archivo llamado `ej20.js`. - -1. Crear una funcion que se llame `saludar` y que imprima el siguiente mensaje. - - ```bash - 'Bienvenido a Spotify' - ``` - -1. Ejecutar la funcion `saludar` para imprimir el mensaje en consola. - -1. Crear una funcion que se llame `sumar` y que imprima en consola el resultado de la siguiente operacion. - - ```bash - 2 + 2 - ``` - -1. Ejecutar la funcion `sumar` para imprimir el mensaje en consola. - -1. Declarar una variable del tipo objeto que se llame `cancion` y que tenga las siguientes propiedades: - - ```javascript - nombre: 'En la ciudad de la furia' - duracion: 345 - ``` - -1. Crear una función con el nombre `mostrarCancion` y que imprima en consola el nombre y duración de la canción que tenemos dentro de la variable `cancion` - -1. Ejecutar la funcion `mostrarCancion` para imprimir el mensaje en consola. diff --git a/trabajo-final/ejercicios/ej21.md b/trabajo-final/ejercicios/ej21.md deleted file mode 100755 index e059ae1..0000000 --- a/trabajo-final/ejercicios/ej21.md +++ /dev/null @@ -1,5 +0,0 @@ -# Funciones - -1. Crear un nuevo archivo llamado `ej21.js`. - -1. Repetir todos los ejercicios del `ej20.js` utilizando funciones asignadas a variables. Utilizar los mismos nombres de funciones. diff --git a/trabajo-final/ejercicios/ej22.md b/trabajo-final/ejercicios/ej22.md deleted file mode 100755 index 70f6632..0000000 --- a/trabajo-final/ejercicios/ej22.md +++ /dev/null @@ -1,21 +0,0 @@ -# Funciones - -1. Crear un nuevo archivo llamado `ej22.js`. - -1. Crear una funcion que se llame `obtenerNombreDeCancion` y que retorne el siguiente valor: - - ```bash - 'En la ciudad de la furia' - ``` - -1. Crear una funcion que se llame `obtenerDuracionDeCancion` y que retorne el siguiente valor: - - ```bash - 345 - ``` - -1. Declarar una variable con el nombre `cancion` y asignar el resultado de ejecutar la funcion `obtenerNombreDeCancion`. - -1. Declarar una variable con el nombre `duracion` y asignar el resultado de ejecutar la funcion `obtenerDuracionDeCancion`. - -1. Imprimir en consola el valor de las variables `cancion` y `duracion`. diff --git a/trabajo-final/ejercicios/ej23.md b/trabajo-final/ejercicios/ej23.md deleted file mode 100755 index 5c4eca1..0000000 --- a/trabajo-final/ejercicios/ej23.md +++ /dev/null @@ -1,65 +0,0 @@ -# Funciones - -1. Crear un nuevo archivo llamado `ej23.js`. - -1. Crear una funcion que se llame `sumar` y que acepte como parametro 2 numeros (llamados `numero1` y `numero2`). Debe retornar la suma de los dos números que se pasaron como parámetro. - -1. Ejecutar la funcion `sumar` y le pasamos como parametros los números 2 y 3. El valor de retorno lo guardamos en una nueva variable llamada `resultado`. - -1. Imprimir en pantalla el contenido de la variable `resultado`. - -1. Crear una funcion con el nombre de `saludar` y que acepte como parámetro una variable con el nombre de `usuario`. - -1. La funcion `saludar` debe retornar un saludo de bienvenida personalizado. (Remplazar USUARIO por el valor de la variable utilizada como parámetro en la función) - - ```bash - valor de retorno: 'Bienvenido ' + USUARIO + ' a Spotify' - ``` - -1. Ejecutar la función `saludar` pasando como parámetro nuestro nombre. El valor de retorno debe ser guardado en una nueva variable con el nombre de `saludo`. - -1. Imprimir en la consola el contenido de la variable `saludo`. - -1. Crear una funcion que se llame `autenticar` que acepta como parámetro 2 variables (`usuario` y `password`). Esta función retorna un valor verdadero o falso si el `usuario` y `password` son los correctos: - - ```bash - usuario esperado: javascript101 - password esperado: 1234 - ``` - -1. Ejecutar la función `autenticar` pasando como parámetro los siguiente valores y almacenar el resultado en una variable con el nombre de `usuarioValido`. - - ```bash - usuario: javascript101 - password: 1234 - ``` - -1. Imprimir en pantalla el contenido de la variable `usuarioValido`. - -1. Ejecutar la función `autenticar` pasando como parámetro los siguiente valores y almacenar el resultado en una variable con el nombre de `usuarioNoValido`. - - ```bash - usuario: ruby101 - password: 12345 - ``` - -1. Imprimir en pantalla el contenido de la variable `usuarioNoValido`. - -1. Declarar una variable con el nombre de `nombreDeUsuario` y asignar el siguiente valor: - - ```bash - 'javascript101' - ``` - -1. Declarar una variable con el nombre de `passwordDeUsuario` y asignar el siguiente valor: - - ```bash - 1234 - ``` - -1. Utilizar una estructura de control llamando a la funcion `autenticar` pasando como parámetros las variables `nombreDeUsuario` y `passwordDeUsuario`. En caso de éxito mostrar un mensaje de bienvenida y de lo contrario uno de error. - - ```bash - mensaje de bienvenida: 'Bienvenido javascript101 a Spotify' - mensaje de error: 'Usuario incorrecto' - ``` diff --git a/trabajo-final/ejercicios/ej24.md b/trabajo-final/ejercicios/ej24.md deleted file mode 100755 index 20d925c..0000000 --- a/trabajo-final/ejercicios/ej24.md +++ /dev/null @@ -1,14 +0,0 @@ -# Foreach / Callback - -1. Crear un nuevo archivo llamado `ej24.js`. - -1. Declarar una variable del tipo array con el nombre `canciones` y los siguientes valores: - - ```bash - 'En la ciudad de la furia' - 'Trátame suavemente' - 'Nada Personal' - 'Signos' - ``` - -1. Utilizar un `foreach` para recorrer e imprimir en consola cada uno de los elementos de la colección `canciones`. diff --git a/trabajo-final/resolucion/ej01.js b/trabajo-final/resolucion/ej01.js deleted file mode 100755 index a1e642d..0000000 --- a/trabajo-final/resolucion/ej01.js +++ /dev/null @@ -1,6 +0,0 @@ -/* - Por medio de console.log(valor) podemos impimir - un mensaje en la consola. -*/ - -console.log('Bienvenidos a Spotify'); diff --git a/trabajo-final/resolucion/ej02.js b/trabajo-final/resolucion/ej02.js deleted file mode 100755 index ab2322e..0000000 --- a/trabajo-final/resolucion/ej02.js +++ /dev/null @@ -1,16 +0,0 @@ -// 2 -var nombreDeCancion = 'En la ciudad de la furia'; - -// 3 -var autor = 'Soda Stereo'; - -// 4 -console.log(nombreDeCancion); -console.log(autor); - -// 5 -console.log(nombreDeCancion, autor); - -// 6 -console.log('Canción: ', nombreDeCancion); -console.log('Autor: ', autor); diff --git a/trabajo-final/resolucion/ej03.js b/trabajo-final/resolucion/ej03.js deleted file mode 100755 index 5fc9882..0000000 --- a/trabajo-final/resolucion/ej03.js +++ /dev/null @@ -1,25 +0,0 @@ -// 2 -var nombreDeCancion = 'En la ciudad de la furia'; - -// 3 -var autor = 'Soda Stereo'; - -// 4 -var duracion = 345; - -// 5 -var reproducir = false; - -// 6 -var favorita = true; - -// 7 -console.log('Canción: ', nombreDeCancion); - -console.log('Autor: ', autor); - -console.log('Duración en segundos: ', duracion); - -console.log('Reproducir: ', reproducir); - -console.log('Canción favorita: ', favorita); diff --git a/trabajo-final/resolucion/ej04.js b/trabajo-final/resolucion/ej04.js deleted file mode 100755 index 5eda617..0000000 --- a/trabajo-final/resolucion/ej04.js +++ /dev/null @@ -1,27 +0,0 @@ -// 2 -var cancion = { - nombre: 'En la ciudad de la furia', - autor: 'Soda Stereo', - duracion: 345, - reproducir: false, - favorita: true -}; - -// 3 -console.log(cancion); - -// 4 -console.log('Canción: ', cancion.nombre); -console.log('Autor: ', cancion.autor); -console.log('Duración en segundos: ', cancion.duracion); -console.log('Reproducir: ', cancion.reproducir); -console.log('Canción favorita: ', cancion.favorita); - -// 5 -cancion.album = 'Me Verás Volver (Hits & Más)'; - -// 6 -console.log(cancion); - -// 7 -console.log('Album: ', cancion.album); diff --git a/trabajo-final/resolucion/ej05.js b/trabajo-final/resolucion/ej05.js deleted file mode 100755 index 9a6e4a6..0000000 --- a/trabajo-final/resolucion/ej05.js +++ /dev/null @@ -1,19 +0,0 @@ -// 2 -var canciones = [ - 'En la ciudad de la furia', - 'Trátame suavemente', - 'Nada Personal', - 'Signos' -]; - -// 3 -console.log(canciones); - -// 4 -console.log(canciones[0]); -console.log(canciones[1]); -console.log(canciones[2]); -console.log(canciones[3]); - -// 5 -console.log('Cantidad de canciones en la colección: ', canciones.length); diff --git a/trabajo-final/resolucion/ej06.js b/trabajo-final/resolucion/ej06.js deleted file mode 100755 index 31271f9..0000000 --- a/trabajo-final/resolucion/ej06.js +++ /dev/null @@ -1,18 +0,0 @@ -// 2 -var cancion = [ - 'En la ciudad de la furia', - 'Soda Stereo', - 345, - false, - true -]; - -// 3 -console.log(cancion); - -// 4 -console.log('Canción: ', cancion[0]); -console.log('Autor: ', cancion[1]); -console.log('Duración en segundos: ', cancion[2]); -console.log('Reproducir: ', cancion[3]); -console.log('Canción favorita: ', cancion[4]); diff --git a/trabajo-final/resolucion/ej07.js b/trabajo-final/resolucion/ej07.js deleted file mode 100755 index 6411009..0000000 --- a/trabajo-final/resolucion/ej07.js +++ /dev/null @@ -1,30 +0,0 @@ -// 2 -var canciones = [ - { nombre: 'En la ciudad de la furia', duracion: 345 }, - { nombre: 'Nada Personal', duracion: 300 } -]; - -// 3 -console.log(canciones); - -// 4 -console.log(canciones[0]); - -// 5 -console.log(canciones[1]); - -// 6 -console.log('Canción: ', canciones[0].nombre); -console.log('Duración en segundos:', canciones[0].duracion); - -// 7 -console.log('Canción: ', canciones[1].nombre); -console.log('Duración en segundos:', canciones[1].duracion); - - -// Extra bonus! -var nombreDeCancion = canciones[1].nombre; -var duracion = canciones[1].duracion; - -console.log('Canción: ', nombreDeCancion); -console.log('Duración en segundos:', duracion); diff --git a/trabajo-final/resolucion/ej08.js b/trabajo-final/resolucion/ej08.js deleted file mode 100755 index e64ad9c..0000000 --- a/trabajo-final/resolucion/ej08.js +++ /dev/null @@ -1,40 +0,0 @@ -// 2 -var autor = { - nombre: 'Soda Stereo', - integrantes: ['Gustavo Cerati', 'Zeta Bosio', 'Charly Alberti'] -}; - -// 3 -var cancion1 = { - nombre: 'En el septimo día', - duracion: 345 -}; - -// 4 -var cancion2 = { - nombre: 'Canción Animal', - duracion: 260 -}; - -// 5 -var cancion3 = { - nombre: 'Té para 3', - duracion: 180 -}; - -// 6 -var disco = { - nombre: 'Canción Animal', - autor: autor, - canciones: [cancion1, cancion2, cancion3] -}; - -// 7 -console.log('Nombre del disco: ', disco.nombre); -console.log('Nombre del autor: ', disco.autor.nombre); - -var integrantes = disco.autor.integrantes; -console.log('Integrantes: ', integrantes[0], integrantes[1], integrantes[2]); - -var canciones = disco.canciones; -console.log('Canciones: ', canciones[0], canciones[1], canciones[2]); diff --git a/trabajo-final/resolucion/ej09.js b/trabajo-final/resolucion/ej09.js deleted file mode 100755 index f2a58a4..0000000 --- a/trabajo-final/resolucion/ej09.js +++ /dev/null @@ -1,3 +0,0 @@ -// 2 -var argumentos = process.argv; -console.log(argumentos); diff --git a/trabajo-final/resolucion/ej10.js b/trabajo-final/resolucion/ej10.js deleted file mode 100755 index 7ff0203..0000000 --- a/trabajo-final/resolucion/ej10.js +++ /dev/null @@ -1,12 +0,0 @@ -// 2 -var argumentos = process.argv; - -// 3 -var nombre = argumentos[2]; - -// 4 -var edad = argumentos[3]; - -// 5 -console.log('Nombre: ', nombre); -console.log('Edad:', edad); diff --git a/trabajo-final/resolucion/ej11.js b/trabajo-final/resolucion/ej11.js deleted file mode 100755 index a73c924..0000000 --- a/trabajo-final/resolucion/ej11.js +++ /dev/null @@ -1,18 +0,0 @@ -// 2 -var resultado = 2 + 6; - -// 3 -console.log(resultado); - -// 4 -var numero1; -var numero2; - -// 5 -numero1 = 4; -numero2 = 5; - -// 6 -console.log(numero1 + numero2) -console.log(numero1 * numero2) -console.log(numero2 - numero1) diff --git a/trabajo-final/resolucion/ej12.js b/trabajo-final/resolucion/ej12.js deleted file mode 100755 index 0c8bc32..0000000 --- a/trabajo-final/resolucion/ej12.js +++ /dev/null @@ -1,27 +0,0 @@ -//2 -var duracion = 345; - -// 3 -duracion++; - -// 4 -console.log(duracion); - -// 5 -duracion--; -duracion--; - -// 6 -console.log(duracion); - -// 7 -duracion += 20; - -// 8 -console.log(duracion); - -// 9 -duracion -= 19; - -// 10 -console.log(duracion); diff --git a/trabajo-final/resolucion/ej13.js b/trabajo-final/resolucion/ej13.js deleted file mode 100755 index b590907..0000000 --- a/trabajo-final/resolucion/ej13.js +++ /dev/null @@ -1,46 +0,0 @@ -// 2 -console.log('2 == 2: ', 2 == 2); - -// 3 -console.log("'papa' == 'papa': ", 'papa' == 'papa'); - -// 4 -console.log('2 != 2', 2 != 2); - -// 5 -console.log('2 != 3', 2 != 3); - -// 6 -console.log('2 == "2": ', 2 == "2"); - -// 7 -console.log('2 === "2"', 2 === "2"); - -// 8 -var duracion1; -var duracion2; - -// 9 -duracion1 = 345; -duracion2 = 400; - -// 10 -console.log(duracion1 > duracion2); - -// 11 -console.log(duracion2 > duracion1); - -// 12 -console.log(duracion1 < duracion2); - -// 13 -console.log(duracion1 == duracion2); - -// 14 -nombreDeCancion1 = 'Canción Animal'; - -// 15 -nombreDeCancion2 = 'En el septimo día'; - -// 16 -console.log(nombreDeCancion1 == nombreDeCancion2); diff --git a/trabajo-final/resolucion/ej14.js b/trabajo-final/resolucion/ej14.js deleted file mode 100755 index 56423f3..0000000 --- a/trabajo-final/resolucion/ej14.js +++ /dev/null @@ -1,17 +0,0 @@ -// 2 -var duracion1 = 345; - -// 3 -var duracion2 = 400; - -// 4 -var duracion3 = 200; - -// 5 -console.log( (duracion1 > duracion3) && (duracion3 < duracion2) ); - -// 6 -console.log( (duracion1 < duracion3) && (duracion3 < duracion2) ); - -// 7 -console.log( (duracion1 < duracion3) || (duracion3 < duracion2) ); diff --git a/trabajo-final/resolucion/ej15.js b/trabajo-final/resolucion/ej15.js deleted file mode 100755 index 7f21c1e..0000000 --- a/trabajo-final/resolucion/ej15.js +++ /dev/null @@ -1,44 +0,0 @@ -// 2 -var usuario = 'javascript101'; - -if (usuario == 'javascript101') { - console.log('Bienvenido javascript101 a spotify'); -} - -if (usuario == 'ruby101') { - console.log('Bienvenido javascript101 a spotify'); -} else { - console.log('Usuario incorrecto'); -} - -// 6 -var duracion = 345; - -// 7 -var mensaje; - -// 8 -mensaje = (duracion > 300) ? 'Esta canción es muy larga' : 'Esta cancion no es muy larga'; - -// 9 -var password = 1234; - -// 10 -if ( (usuario == 'javascript101') && (password == 1234) ) { - console.log('Bienvenido javascript101 a spotify'); -} else { - console.log('Usuario incorrecto'); -} - -// 11 -var usuario1 = { - nombre: 'javascript101', - password: 1234 -}; - -// 12 -if ( (usuario1.nombre == 'javascript101') && (usuario1.password == 1234) ) { - console.log('Bienvenido javascript101 a spotify'); -} else { - console.log('Usuario incorrecto'); -} diff --git a/trabajo-final/resolucion/ej16.js b/trabajo-final/resolucion/ej16.js deleted file mode 100755 index 26aa5f6..0000000 --- a/trabajo-final/resolucion/ej16.js +++ /dev/null @@ -1,17 +0,0 @@ -// 2 -var autor = 'Viejas Locas'; - -// 3 -switch (autor) { - case 'Soda Stereo': - console.log('Nos gusta soda'); - break; - case 'Amar Azul': - console.log('Cumbia Nena!!'); - break; - case 'Viejas Locas': - console.log('Rock and rooooollllllll'); - break; - default: - console.log('No te gusta la música'); -} diff --git a/trabajo-final/resolucion/ej17.js b/trabajo-final/resolucion/ej17.js deleted file mode 100755 index 7fe9701..0000000 --- a/trabajo-final/resolucion/ej17.js +++ /dev/null @@ -1,22 +0,0 @@ -// 2 -for (var i = 1; i < 11; i++) { - console.log(i); -} - -// 3 -for (var i = 10; i > 0; i--) { - console.log(i); -} - -// 4 -var canciones = [ - 'En la ciudad de la furia', - 'Trátame suavemente', - 'Nada Personal', - 'Signos' -]; - -// 5 -for (var i = 0; i < canciones.length; i++) { - console.log(canciones[i]); -} diff --git a/trabajo-final/resolucion/ej18.js b/trabajo-final/resolucion/ej18.js deleted file mode 100755 index 9933345..0000000 --- a/trabajo-final/resolucion/ej18.js +++ /dev/null @@ -1,14 +0,0 @@ -// 2 -var contador = 1; - -// 3 -while (contador < 11) { - console.log(contador); - contador++; -} - -// 4 -while (contador > 0) { - console.log(contador); - contador--; -} diff --git a/trabajo-final/resolucion/ej19.js b/trabajo-final/resolucion/ej19.js deleted file mode 100755 index 2f3c844..0000000 --- a/trabajo-final/resolucion/ej19.js +++ /dev/null @@ -1,14 +0,0 @@ -// 2 -var contador = 1; - -// 3 -do { - console.log(contador); - contador++ -} while (contador < 11) - -// 4 -do { - console.log(contador); - contador-- -} while (contador > 0) diff --git a/trabajo-final/resolucion/ej20.js b/trabajo-final/resolucion/ej20.js deleted file mode 100755 index c153e3c..0000000 --- a/trabajo-final/resolucion/ej20.js +++ /dev/null @@ -1,31 +0,0 @@ -// 2 -function saludar() { - console.log('Bienvenido a Spotify'); -} - -// 3 -saludar(); - - -// 4 -function sumar() { - console.log( 2 + 2); -} - -// 5 -sumar(); - -// 6 -var cancion = { - nombre: 'En la ciudad de la furia', - duracion: 345 -}; - -// 7 -function mostrarCancion() { - console.log(cancion.nombre); - console.log(cancion.duracion); -} - -// 8 -mostrarCancion(); diff --git a/trabajo-final/resolucion/ej21.js b/trabajo-final/resolucion/ej21.js deleted file mode 100755 index 4e4324f..0000000 --- a/trabajo-final/resolucion/ej21.js +++ /dev/null @@ -1,31 +0,0 @@ -// 2 -var saludar = function() { - console.log('Bienvenido a Spotify'); -} - -// 3 -saludar(); - - -// 4 -var sumar = function() { - console.log( 2 + 2); -} - -// 5 -sumar(); - -// 6 -var cancion = { - nombre: 'En la ciudad de la furia', - duracion: 345 -}; - -// 7 -var mostrarCancion = function() { - console.log(cancion.nombre); - console.log(cancion.duracion); -} - -// 8 -mostrarCancion(); diff --git a/trabajo-final/resolucion/ej22.js b/trabajo-final/resolucion/ej22.js deleted file mode 100755 index d99c297..0000000 --- a/trabajo-final/resolucion/ej22.js +++ /dev/null @@ -1,19 +0,0 @@ -// 2 -function obtenerNombreDeCancion() { - return 'En la ciudad de la furia'; -} - -// 3 -function obtenerDuracionDeCancion() { - return 345; -} - -// 4 -var cancion = obtenerNombreDeCancion(); - -// 5 -var duracion = obtenerDuracionDeCancion(); - -// 6 -console.log(cancion); -console.log(duracion); diff --git a/trabajo-final/resolucion/ej23.js b/trabajo-final/resolucion/ej23.js deleted file mode 100755 index 066d697..0000000 --- a/trabajo-final/resolucion/ej23.js +++ /dev/null @@ -1,53 +0,0 @@ -// 2 -function sumar(numero1, numero2) { - return numero1 + numero2; -} - -// 3 -var resultado = sumar(2, 3); - -// 4 -console.log(resultado); - -// 5 -function saludar(usuario) { - // 6 - return 'Bienvenido ' + usuario + ' a spotify'; -} - -// 7 -var saludo = saludar('nicolas'); - -// 8 -console.log(saludo); - -// 9 -function autenticar(usuario, password) { - return (usuario === 'javascript101') && (password === 1234); -} - -// 10 -var usuarioValido = autenticar('javascript101', 1234); - -// 11 -console.log(usuarioValido); - -// 12 -var usuarioValido = autenticar('ruby101', 12345); - -// 13 -console.log(usuarioValido); - -// 14 -var nombreDeUsuario = 'javascript101'; - -// 15 -var passwordDeUsuario = 1234; - -// 16 - -if ( autenticar(nombreDeUsuario, passwordDeUsuario) ) { - console.log('Bienvenido javascript101 a spotify'); -} else { - console.log('Usuario incorrecto'); -} diff --git a/trabajo-final/resolucion/ej24.js b/trabajo-final/resolucion/ej24.js deleted file mode 100755 index 3d49547..0000000 --- a/trabajo-final/resolucion/ej24.js +++ /dev/null @@ -1,12 +0,0 @@ -// 2 -var canciones = [ - 'En la ciudad de la furia', - 'Trátame suavemente', - 'Nada Personal', - 'Signos' -]; - -// 3 -canciones.forEach(function(cancion) { - console.log(cancion); -}); From 5d209e52b75da44fbb0b1ace4e8307a145d6a14a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leila=20Yba=C3=B1ez?= <30808027+leilaybnz@users.noreply.github.com> Date: Sat, 1 Jun 2019 17:33:13 -0300 Subject: [PATCH 2/8] Update de links extra, sin mencionar comunidades aun. --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5f7861b..0dda399 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,8 @@ Este workshop es una introducción a la programación usando JavaScript. 1. [NodeSchool.io - JavaScripting](https://github.com/workshopper/javascripting) 1. [Introducción a JavaScript en la web](http://librosweb.es/libro/javascript/) 1. [Platzi - Curso de Programación básica](https://platzi.com/cursos/programacion-basica/) -1. [Eloquent JavaScript en español](http://hectorip.github.io/Eloquent-JavaScript-ES-online/) +1. [Eloquent JavaScript](http://hectorip.github.io/Eloquent-JavaScript-ES-online/) 1. [Aprende ECMAScript 6](https://carlosazaustre.es/ecmascript-6-el-nuevo-estandar-de-javascript/) -1. [Mozilla - Clases en ECMAScript 6](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Classes) +1. [Learn Vanilla Js __en Inglés__](https://learnvanillajs.com/) +1. [The Modern JavaScript Tutorial __en Inglés__](https://javascript.info/) +1. [The Complete JavaScript Handbook __en Inglés__](https://medium.com/free-code-camp/the-complete-javascript-handbook-f26b2c71719c) From 88e1e1fd7e19fe3192b37939bbd7914390ea7113 Mon Sep 17 00:00:00 2001 From: CaroAmarillo Date: Sat, 1 Jun 2019 22:36:35 -0300 Subject: [PATCH 3/8] change titles --- ejercicios/conceptuales/01.md | 4 ++-- ejercicios/conceptuales/03.md | 4 ++-- ejercicios/conceptuales/04.md | 4 ++-- ejercicios/conceptuales/05.md | 4 ++-- ejercicios/conceptuales/06.md | 5 ++--- 5 files changed, 10 insertions(+), 11 deletions(-) diff --git a/ejercicios/conceptuales/01.md b/ejercicios/conceptuales/01.md index 9384379..b77513a 100644 --- a/ejercicios/conceptuales/01.md +++ b/ejercicios/conceptuales/01.md @@ -1,7 +1,7 @@ -> Definición más simple, reemplazar por alert - # console.log +> Definición más simple, reemplazar por alert + JavaScript nos provee de un **_objeto global_** llamado `console` que nos va a permitir mostrar información en la terminal. Este objeto `console` dispone de ciertos **_métodos_** que podemos usar en cualquier momento dentro de nuestros programas. El más conocido es `log`. Veamos un ejemplo de como mostrar el número `101` usando el método `log` del objeto global `console`: diff --git a/ejercicios/conceptuales/03.md b/ejercicios/conceptuales/03.md index 282a735..52e69f6 100644 --- a/ejercicios/conceptuales/03.md +++ b/ejercicios/conceptuales/03.md @@ -1,7 +1,7 @@ -> explicar const-let mencionando var dejando de lado scopes - # Variables +> explicar const-let mencionando var dejando de lado scopes + Una variable es una referencia a un valor (Suena difícil, ¿no? 🤔. Pero tranqui, no lo es). Pensemos a una variable como si fuera una caja. A esta caja le vamos a poner un nombre que nos va a permitir acceder a ella cuando lo necesitemos. diff --git a/ejercicios/conceptuales/04.md b/ejercicios/conceptuales/04.md index d13646b..bd659e7 100644 --- a/ejercicios/conceptuales/04.md +++ b/ejercicios/conceptuales/04.md @@ -1,7 +1,7 @@ -> Revisar ejercicios de operadores -> # Operadores +> Revisar ejercicios de operadores + Un operador es un símbolo (compuesto de 1 o más caracteres) que tiene una función predefinida en el lenguaje. Uno de ellos es el signo `=` (igual), usado para asignar el valor de la derecha a la variable de la izquierda, tal como lo aprendimos en el módulo anterior. diff --git a/ejercicios/conceptuales/05.md b/ejercicios/conceptuales/05.md index 6114388..0f23221 100644 --- a/ejercicios/conceptuales/05.md +++ b/ejercicios/conceptuales/05.md @@ -1,7 +1,7 @@ -> Revisar ejercicio 3 de condicionales -> # Condicionales +> Revisar ejercicio 3 de condicionales + En muchos casos, necesitamos tomar decisiones en un programa para ejecutar diferentes sentencias si una condición se cumple. Por ejemplo, mostrar en la terminal un mensaje que diga `'Estás aprobado'` si la variable `notaDelParcial` es `>=` (Mayor o igual) a `4`. Este tipo de decisiones en el código las vamos a escribir usando la sentencia `if` seguida de una expresión entre `()` (paréntesis) que debe poder ser interpretada como `true` para ejecutar el código que está entre `{}` (llaves). diff --git a/ejercicios/conceptuales/06.md b/ejercicios/conceptuales/06.md index b300a21..951b39f 100644 --- a/ejercicios/conceptuales/06.md +++ b/ejercicios/conceptuales/06.md @@ -1,9 +1,8 @@ +# Parcialito 🙊 + > Ver de adaptar parcialito a trabajo en equipo de a 2 personas. Cambiar el nombre > agregar requerimientos incrementales, al final del workshop hacer pasar a varios grupos a ver por qué eligieron esas ideas - -# Parcialito 🙊 - La idea de este módulo es ejercitar lo que aprendimos hasta el momento. Para ello, vamos a plantear 2 ejercicios: 1. Juan y Pedro son hermanos. La semana pasada tuvieron una prueba en el colegio y hoy la profesora les dio la nota. Escribir un programa que: From 72a44adbbaaec1161f81796d714f7544a1906c80 Mon Sep 17 00:00:00 2001 From: CaroAmarillo Date: Sat, 1 Jun 2019 22:38:28 -0300 Subject: [PATCH 4/8] change titles names --- ejercicios/conceptuales/01.md | 2 +- ejercicios/conceptuales/02.md | 2 +- ejercicios/conceptuales/03.md | 2 +- ejercicios/conceptuales/04.md | 2 +- ejercicios/conceptuales/05.md | 2 +- ejercicios/conceptuales/06.md | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ejercicios/conceptuales/01.md b/ejercicios/conceptuales/01.md index b77513a..9049a31 100644 --- a/ejercicios/conceptuales/01.md +++ b/ejercicios/conceptuales/01.md @@ -1,4 +1,4 @@ -# console.log +#01. console.log > Definición más simple, reemplazar por alert diff --git a/ejercicios/conceptuales/02.md b/ejercicios/conceptuales/02.md index 9790ff7..4f03293 100644 --- a/ejercicios/conceptuales/02.md +++ b/ejercicios/conceptuales/02.md @@ -1,4 +1,4 @@ -# Números, Cadenas de Texto y Booleanos +#02. Números, Cadenas de Texto y Booleanos En JavaScript existen muchos tipos de datos, en este momento vamos a focalizarnos en 3 de ellos: **_números_**, **_cadenas de caracteres_** y **_booleanos_**. diff --git a/ejercicios/conceptuales/03.md b/ejercicios/conceptuales/03.md index 52e69f6..0d0bcbe 100644 --- a/ejercicios/conceptuales/03.md +++ b/ejercicios/conceptuales/03.md @@ -1,4 +1,4 @@ -# Variables +#03. Variables > explicar const-let mencionando var dejando de lado scopes diff --git a/ejercicios/conceptuales/04.md b/ejercicios/conceptuales/04.md index bd659e7..c2a874f 100644 --- a/ejercicios/conceptuales/04.md +++ b/ejercicios/conceptuales/04.md @@ -1,4 +1,4 @@ -# Operadores +#04. Operadores > Revisar ejercicios de operadores diff --git a/ejercicios/conceptuales/05.md b/ejercicios/conceptuales/05.md index 0f23221..62bc677 100644 --- a/ejercicios/conceptuales/05.md +++ b/ejercicios/conceptuales/05.md @@ -1,4 +1,4 @@ -# Condicionales +#05. Condicionales > Revisar ejercicio 3 de condicionales diff --git a/ejercicios/conceptuales/06.md b/ejercicios/conceptuales/06.md index 951b39f..0edef44 100644 --- a/ejercicios/conceptuales/06.md +++ b/ejercicios/conceptuales/06.md @@ -1,4 +1,4 @@ -# Parcialito 🙊 +#06. Parcialito 🙊 > Ver de adaptar parcialito a trabajo en equipo de a 2 personas. Cambiar el nombre > agregar requerimientos incrementales, al final del workshop hacer pasar a varios grupos a ver por qué eligieron esas ideas From 1aaf061b22244b1de527c3b82eee9d15512654b8 Mon Sep 17 00:00:00 2001 From: CaroAmarillo Date: Sat, 1 Jun 2019 22:40:24 -0300 Subject: [PATCH 5/8] change console.log title --- ejercicios/conceptuales/01.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ejercicios/conceptuales/01.md b/ejercicios/conceptuales/01.md index 9049a31..7beeafc 100644 --- a/ejercicios/conceptuales/01.md +++ b/ejercicios/conceptuales/01.md @@ -1,4 +1,4 @@ -#01. console.log +# 01. console.log > Definición más simple, reemplazar por alert From f01f392409e715e4ca1d9866dab134079d42cd40 Mon Sep 17 00:00:00 2001 From: Caro Amarillo Date: Sun, 2 Jun 2019 01:44:38 +0000 Subject: [PATCH 6/8] GitBook: [gitbook] 27 pages modified --- README.md | 57 +++--- SUMMARY.md | 21 +++ botiquin/1_variables.md | 42 +++++ botiquin/2_operadores_expresiones.md | 42 +++++ botiquin/3_arrays.md | 53 ++++++ botiquin/4_estructuras_control.md | 48 +++++ botiquin/5_objetos.md | 75 ++++++++ .../botiquin => botiquin}/6_funciones.md | 88 +++++---- botiquin/7_aplicacion_web.md | 23 +++ botiquin/8_the_end....md | 13 ++ botiquin/README.md | 2 + ejercicios/README.md | 2 + ejercicios/botiquin/1_variables.md | 36 ---- .../botiquin/2_operadores_expresiones.md | 36 ---- ejercicios/botiquin/3_arrays.md | 48 ----- ejercicios/botiquin/4_estructuras_control.md | 37 ---- ejercicios/botiquin/5_objetos.md | 67 ------- ejercicios/botiquin/7_aplicacion_web.md | 21 --- ejercicios/botiquin/8_the_end....md | 11 -- ejercicios/conceptuales/01.md | 17 +- ejercicios/conceptuales/02.md | 33 ++-- ejercicios/conceptuales/03.md | 25 +-- ejercicios/conceptuales/04.md | 171 +++++++++--------- ejercicios/conceptuales/05.md | 33 ++-- ejercicios/conceptuales/06.md | 33 ++-- ejercicios/conceptuales/README.md | 2 + 26 files changed, 558 insertions(+), 478 deletions(-) create mode 100644 SUMMARY.md create mode 100644 botiquin/1_variables.md create mode 100644 botiquin/2_operadores_expresiones.md create mode 100644 botiquin/3_arrays.md create mode 100644 botiquin/4_estructuras_control.md create mode 100644 botiquin/5_objetos.md rename {ejercicios/botiquin => botiquin}/6_funciones.md (57%) create mode 100644 botiquin/7_aplicacion_web.md create mode 100644 botiquin/8_the_end....md create mode 100644 botiquin/README.md create mode 100644 ejercicios/README.md delete mode 100644 ejercicios/botiquin/1_variables.md delete mode 100644 ejercicios/botiquin/2_operadores_expresiones.md delete mode 100644 ejercicios/botiquin/3_arrays.md delete mode 100644 ejercicios/botiquin/4_estructuras_control.md delete mode 100644 ejercicios/botiquin/5_objetos.md delete mode 100644 ejercicios/botiquin/7_aplicacion_web.md delete mode 100644 ejercicios/botiquin/8_the_end....md create mode 100644 ejercicios/conceptuales/README.md diff --git a/README.md b/README.md index 5f7861b..9ffb0d8 100644 --- a/README.md +++ b/README.md @@ -3,43 +3,46 @@ Este workshop es una introducción a la programación usando JavaScript. ## Stackblitz + > Agregar guía de como usar Stackblitz ## Introducción + > Motivacion de por qué programar, reducir las partes que consideremos innecesarias. +> +> Qué se puede programar + +[Empezar con el workshop](ejercicios/conceptuales/01.md) ->Qué se puede programar +## Ejercicios +1. [console.log / alert \(?\)](ejercicios/conceptuales/01.md) +2. [Números, Cadenas de Texto y Booleanos](ejercicios/conceptuales/02.md) +3. [Variables](ejercicios/conceptuales/03.md) +4. [Operadores](ejercicios/conceptuales/04.md) +5. [Condicionales](ejercicios/conceptuales/05.md) +6. [Parcialito 🙊](ejercicios/conceptuales/06.md) -[Empezar con el workshop](/ejercicios/conceptuales/01.md) +### Ejercicios Botiquín Virtual \[ **WIP** \] +1. [Variables](botiquin/1_variables.md) +2. [Operadores y Expresiones](botiquin/2_operadores_expresiones.md) +3. [Arrays](botiquin/3_arrays.md) +4. [Estructuras de control](botiquin/4_estructuras_control.md) +5. [Objetos](botiquin/5_objetos.md) +6. [Funciones](botiquin/6_funciones.md) +7. [Aplicación Web](botiquin/7_aplicacion_web.md) -## Ejercicios +## Links extras para seguir aprendiendo \[ **WIP** \] -1. [console.log / alert (?)](/ejercicios/conceptuales/01.md) -2. [Números, Cadenas de Texto y Booleanos](/ejercicios/conceptuales/02.md) -3. [Variables](/ejercicios/conceptuales/03.md) -4. [Operadores](/ejercicios/conceptuales/04.md) -5. [Condicionales](/ejercicios/conceptuales/05.md) -6. [Parcialito 🙊](/ejercicios/conceptuales/06.md) - -### Ejercicios Botiquín Virtual [ **WIP** ] -1. [Variables](/ejercicios/botiquin/1_variables.md) -2. [Operadores y Expresiones](/ejercicios/botiquin/2_operadores_expresiones.md) -3. [Arrays](/ejercicios/botiquin/3_arrays.md) -4. [Estructuras de control](/ejercicios/botiquin/4_estructuras_control.md) -5. [Objetos](/ejercicios/botiquin/5_objetos.md) -6. [Funciones](/ejercicios/botiquin/6_funciones.md) -7. [Aplicación Web](/ejercicios/botiquin/7_aplicacion_web.md) - -## Links extras para seguir aprendiendo [ **WIP** ] > Links extras ver los que estan agregar mas, mencionar comunidades. etc 1. [JavaScript para gatos](https://jsparagatos.com/) -1. [Free Code Camp BA - Introducción a JavaScript](https://github.com/nhsz/intro-js) -1. [NodeSchool.io - JavaScripting](https://github.com/workshopper/javascripting) -1. [Introducción a JavaScript en la web](http://librosweb.es/libro/javascript/) -1. [Platzi - Curso de Programación básica](https://platzi.com/cursos/programacion-basica/) -1. [Eloquent JavaScript en español](http://hectorip.github.io/Eloquent-JavaScript-ES-online/) -1. [Aprende ECMAScript 6](https://carlosazaustre.es/ecmascript-6-el-nuevo-estandar-de-javascript/) -1. [Mozilla - Clases en ECMAScript 6](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Classes) +2. [Free Code Camp BA - Introducción a JavaScript](https://github.com/nhsz/intro-js) +3. [NodeSchool.io - JavaScripting](https://github.com/workshopper/javascripting) +4. [Introducción a JavaScript en la web](http://librosweb.es/libro/javascript/) +5. [Platzi - Curso de Programación básica](https://platzi.com/cursos/programacion-basica/) +6. [Eloquent JavaScript en español](http://hectorip.github.io/Eloquent-JavaScript-ES-online/) +7. [Aprende ECMAScript 6](https://carlosazaustre.es/ecmascript-6-el-nuevo-estandar-de-javascript/) +8. [Mozilla - Clases en ECMAScript 6](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Classes) + diff --git a/SUMMARY.md b/SUMMARY.md new file mode 100644 index 0000000..8be74ab --- /dev/null +++ b/SUMMARY.md @@ -0,0 +1,21 @@ +# Table of contents + +* [JavaScript 101](README.md) +* [Ejercicios](ejercicios/README.md) + * [Conceptuales](ejercicios/conceptuales/README.md) + * [01. console.log](ejercicios/conceptuales/01.md) + * [02. Números, Cadenas de Texto y Booleanos](ejercicios/conceptuales/02.md) + * [03. Variables](ejercicios/conceptuales/03.md) + * [04. Operadores](ejercicios/conceptuales/04.md) + * [05. Condicionales](ejercicios/conceptuales/05.md) + * [06. Parcialito 🙊](ejercicios/conceptuales/06.md) +* [Botiquin](botiquin/README.md) + * [Estructuras de control](botiquin/4_estructuras_control.md) + * [Aplicación Web](botiquin/7_aplicacion_web.md) + * [¿Donde seguir leyendo?](botiquin/8_the_end....md) + * [Arrays](botiquin/3_arrays.md) + * [Operadores y Expresiones](botiquin/2_operadores_expresiones.md) + * [Variables](botiquin/1_variables.md) + * [Funciones](botiquin/6_funciones.md) + * [Objetos](botiquin/5_objetos.md) + diff --git a/botiquin/1_variables.md b/botiquin/1_variables.md new file mode 100644 index 0000000..ffebd45 --- /dev/null +++ b/botiquin/1_variables.md @@ -0,0 +1,42 @@ +# Variables + +1. En esta actividad necesitamos definir variables que almacenen la cantidad de elementos de nuestro botiquín. + + En él tenemos 3 apósitos adhesivos, 1 alcohol en gel, 1 blister \(_tableta_\) de aspirinas y 2 pares de guantes de latex. + + A su vez, es necesario mostrar las cantidades en la consola \(Pista: Usa `console.log();`\) + +```javascript +var cantidadApositosAdhesivos = 3; +var cantidadAlcoholEnGel = 1; +var cantidadBlisterAspirinas = 1; +var cantidadGuantesDeLatex = 4; +console.log(cantidadApositosAdhesivos, cantidadAlcoholEnGel, cantidadBlisterAspirinas, cantidadGuantesDeLatex); +``` + +1. Defina las variables necesarias para mostrar el nombre de los elementos que contiene nuestro botiquin. + + ```javascript + var nombreApositos = 'Curitas'; + var nombreAlcohol = 'Alcohol en Gel'; + var nombreAspirinas = 'Aspirinas'; + var nombreGuantes = 'Guantes de Latex'; + console.log(nombreApositos, nombreAlcohol, nombreAspirinas, nombreGuantes); + ``` + +2. Muestre en la consola, el nombre de cada elemento del botiquín junto con la cantidad correspondiente. + + ```javascript + console.log(nombreApositos, ':', cantidadApositosAdhesivos); + console.log(nombreAlcohol, ':', cantidadAlcoholEnGel); + console.log(nombreAspirinas, ':', cantidadBlisterAspirinas); + console.log(nombreGuantes, ':', cantidadGuantesDeLatex); + ``` + +3. ¿Que sucede si queremos ver la cantidad de algun elemento que no definimos en el botiquín? Ejemplo: `cantidadDeVendas`. +4. ¿Que problema tiene la siguiente sentencia? + + ```javascript + console.log("Nuevo botiquín'); + ``` + diff --git a/botiquin/2_operadores_expresiones.md b/botiquin/2_operadores_expresiones.md new file mode 100644 index 0000000..66aaabb --- /dev/null +++ b/botiquin/2_operadores_expresiones.md @@ -0,0 +1,42 @@ +# Operadores y Expresiones + +1. Pasamos por una farmacia y trajimos 1 caja de 10 apósitos adhesivos y 2 blisters de aspirinas. Actualice las cantidades de los elementos correspondientes en nuestro botiquín. + + ```javascript + var cantidadApositosAdhesivos = 3; + var cantidadBlisterAspirinas = 1; + cantidadApositosAdhesivos = cantidadApositosAdhesivos + 10; + cantidadBlisterAspirinas = cantidadBlisterAspirinas + 2; + console.log(cantidadApositosAdhesivos, cantidadBlisterAspirinas); + ``` + +2. Defina una variable que tenga la cantidad total de aspirinas del botiquín sabiendo que cada blister tiene 10 aspirinas. + + ```javascript + var cantidadAspirinas = cantidadBlisterAspirinas * 10; + console.log(cantidadAspirinas); + ``` + +3. Defina la variable `quedanApositos` la cual determine si quedan apósitos disponibles. + + ```javascript + var quedanApositos = cantidadApositosAdhesivos > 0; + console.log('¿Quedan apósitos?', quedanApositos); + ``` + +4. Muestre en la consola, el nombre de cada elemento del botiquín junto con la cantidad correspondiente. + + ```javascript + console.log(nombreApositos, ':', cantidadApositosAdhesivos); + console.log(nombreAspirinas, ':', cantidadBlisterAspirinas); + console.log(nombreGuantes, ':', cantidadGuantesDeLatex); + ``` + +5. ¿Que problema tiene el siguiente código? + + ```javascript + var cantidadApositosAdhesivos = '3'; + cantidadApositosAdhesivos = cantidadApositosAdhesivos + 10; + console.log(cantidadApositosAdhesivos); + ``` + diff --git a/botiquin/3_arrays.md b/botiquin/3_arrays.md new file mode 100644 index 0000000..7e5021f --- /dev/null +++ b/botiquin/3_arrays.md @@ -0,0 +1,53 @@ +# Arrays + +1. Defina el botiquín como un **arreglo** con el nombre de los elementos que contiene. + + ```javascript + var botiquin = ['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex']; + console.log(botiquin); + ``` + +2. Muestre en la consola la cantidad de elementos que contiene el botiquín. + + ```javascript + var cantidadDeElementos = botiquin.length; + console.log(cantidadDeElementos); + ``` + +3. Obtenga el primer elemento y el ultimo que contiene el botiquín. \(Tip: _Los índices de los arrays comienzan desde 0._\) + + ```javascript + var primerElemento = botiquin[0]; + var ultimoElemento = botiquin[ botiquin.length - 1 ]; + console.log(primerElemento, ultimoElemento); + ``` + +4. Defina un arreglo con las cantidades de cada elemento del botiquín en la misma posicion definida anteriormente. Luego muestre la cantidad de aspirinas que tiene el botiquín como `NOMBRE: CANTIDAD`. + + ```javascript + var botiquin = ['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex']; + var cantidades = [13, 1, 3, 4]; + var indiceDeAspirinas = 2; + console.log(botiquin[indiceDeAspirinas], ':', cantidades[indiceDeAspirinas]); + ``` + +5. Pasamos nuevamente por la farmacia y trajimos 1 paquete de gasas. Agregue este elemento al botiquín. \(Pista: Llame al método _push_ sobre el `botiquin`\) + + ```javascript + botiquin.push('Gasas'); + console.log(botiquin); + ``` + +6. Quite el último elemento agregado del botiquín. \(Pista: Llame al método _pop_ sobre el `botiquin`\) + + ```javascript + var ultimoElemento = botiquin.pop(); + console.log(botiquin, ultimoElemento); + ``` + +7. ¿Qué elemento tomaremos en esta sentencia? + + ```javascript + console.log(botiquin[ botiquin.length ]); + ``` + diff --git a/botiquin/4_estructuras_control.md b/botiquin/4_estructuras_control.md new file mode 100644 index 0000000..e5f0b1f --- /dev/null +++ b/botiquin/4_estructuras_control.md @@ -0,0 +1,48 @@ +# Estructuras de control + +1. Muestre en la consola un mensaje si aun quedan apósitos en el botiquin, en caso contrario muestre el mensaje `'Hacen falta apósitos!'`. + + ```javascript + var cantidadApositosAdhesivos = 13; + if (cantidadApositosAdhesivos > 0) { + console.log('Aún quedan apositos.'); + } else { + console.log('Hacen falta apósitos!'); + } + ``` + +2. Recorra el botiquín y muestre de a uno por vez los elementos en la consola. \(Pista: Usa la sentencia `while`\). + + ```javascript + var botiquin = ['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex']; + var indice = 0; + while(indice < botiquin.length) { + console.log(botiquin[indice]); + indice = indice + 1; + } + ``` + +3. Recorra el botiquín y muestre el mensaje `'Aun quedan gasas en el botiquin.'` si hay gasas en el botiquín. + + \`\`\` javascript + + var botiquin = \['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex'\]; + + var indice = 0; + + var quedanGasas = false; + + while\(indice < botiquin.length\) { + + if\(botiquin\[indice\] == 'Gasas'\) { + + quedanGasas = true; + + } + + indice = indice + 1; + + } + +if\(quedanGasas\) { console.log\('Aun quedan gasas.'\); } \`\`\` + diff --git a/botiquin/5_objetos.md b/botiquin/5_objetos.md new file mode 100644 index 0000000..eb66492 --- /dev/null +++ b/botiquin/5_objetos.md @@ -0,0 +1,75 @@ +# Objetos + +1. Defina una variable que almacene la información de los apósitos como un objeto y muestre sus propiedades en la consola. \(Pista: Defina el objeto con las propiedades `nombre` y `cantidad`\). + + ```javascript + var apositos = { + nombre: 'Apósitos adhesivos', + cantidad: 13 + }; + console.log(apositos.nombre, apositos.cantidad); + ``` + +2. Cambie el nombre de los apósitos por `'Curitas'` y muestrelo en la consola. + + ```javascript + var apositos = { + nombre: 'Apósitos adhesivos', + cantidad: 13 + }; + apositos.nombre = 'Curitas'; + console.log(apositos.nombre, apositos.cantidad); + ``` + +3. Agregue la propiedad `fechaDeVencimiento` al objeto de las _aspirinas_ con el valor `'12/18'`. + + ```javascript + var blistersDeAspirinas = { + nombre: 'Aspirinas', + cantidad: 3 + }; + blistersDeAspirinas.fechaDeVencimiento = '12/18'; + console.log(blistersDeAspirinas); + ``` + +4. Cambie todos los elementos del botiquín a objetos con la misma estructura. + + ```javascript + var botiquin = [ + { + nombre: 'Curitas', + cantidad: 13 + }, + { + nombre: 'Alcohol en gel', + cantidad: 11 + }, + { + nombre: 'Aspirinas', + cantidad: 3 + }, + { + nombre: 'Guantes de latex', + cantidad: 4 + } + ]; + console.log(botiquin); + ``` + +5. Recorra el botiquín con los nuevos objetos mostrando el `nombre` y la `cantidad` de cada elemento. + + ```javascript + var indice = 0; + while(indice < botiquin.length) { + var elemento = botiquin[indice]; + console.log(elemento.nombre, elemento.cantidad); + indice = indice + 1; + } + ``` + +6. ¿Qué diferencia encuentra de usar objetos sobre las soluciones del comienzo de curso? + + ```text + La idea es que puedan incorporar el concepto de simple de encapsulamiento y agrupamiento de información coherente. + ``` + diff --git a/ejercicios/botiquin/6_funciones.md b/botiquin/6_funciones.md similarity index 57% rename from ejercicios/botiquin/6_funciones.md rename to botiquin/6_funciones.md index c2bb543..949d95f 100644 --- a/ejercicios/botiquin/6_funciones.md +++ b/botiquin/6_funciones.md @@ -1,48 +1,59 @@ # Funciones 1. Declare una función que muestre el mensaje `'Bienvenidos al botiquín virtual!'`. -``` javascript -function bienvenidos() { - console.log('Bienvenidos al botiquín virtual!'); -} -bienvenidos(); -``` + + ```javascript + function bienvenidos() { + console.log('Bienvenidos al botiquín virtual!'); + } + bienvenidos(); + ``` + 2. Declare una función que reciba tu nombre como parametro y lo una al mensaje de bienvenida. -``` javascript -function bienvenido(nombre) { - console.log('Bienvenido ' + nombre + ' al botiquín virtual!'); -} -bienvenido('Gastón'); -``` + + ```javascript + function bienvenido(nombre) { + console.log('Bienvenido ' + nombre + ' al botiquín virtual!'); + } + bienvenido('Gastón'); + ``` + 3. Utilice la función nativa de JavaScript `prompt()` para ingresar tu nombre y luego envielo como parametro a la función anterior. -``` javascript -var nombre = prompt('¿Cuál es tu nombre?'); -bienvenido(nombre); -``` -4. Declare una función que calcule y retorne la cantidad de aspirinas que hay en el botiquín a partir de los blisters que hay en él (Tal cual hicimos en el ejercicio 2 de _Operadores_); -``` javascript -function aspirinasEnBotiquin(blistersDeAspirinas) { - return blistersDeAspirinas * 10; -} -var cantidadBlisterAspirinas = 3; -console.log(aspirinasEnBotiquin(cantidadBlisterAspirinas)); -``` + + ```javascript + var nombre = prompt('¿Cuál es tu nombre?'); + bienvenido(nombre); + ``` + +4. Declare una función que calcule y retorne la cantidad de aspirinas que hay en el botiquín a partir de los blisters que hay en él \(Tal cual hicimos en el ejercicio 2 de _Operadores_\); + + ```javascript + function aspirinasEnBotiquin(blistersDeAspirinas) { + return blistersDeAspirinas * 10; + } + var cantidadBlisterAspirinas = 3; + console.log(aspirinasEnBotiquin(cantidadBlisterAspirinas)); + ``` + 5. ¿Qué sucederá si la función anterior la llamamos sin enviarle los parametros necesarios? -``` javascript -console.log(aspirinasEnBotiquin()); -``` + + ```javascript + console.log(aspirinasEnBotiquin()); + ``` + 6. Defina la función `sonIguales` que determine si 2 objetos del botiquín son iguales o no. A su vez, escriba un programa que use esta función y muestre un mensaje a partir de su resultado. -``` javascript -function sonIguales(elemento1, elemento2) { - return elemento1.nombre === elemento2.nombre; -} -if(sonIguales(curitas, alcohol)) { - console.log('Son el mismo elemento!'); -} else { - console.log('Son elementos diferentes!'); -} -``` + \`\`\` javascript + + function sonIguales\(elemento1, elemento2\) { + + return elemento1.nombre === elemento2.nombre; + + } + +if\(sonIguales\(curitas, alcohol\)\) { console.log\('Son el mismo elemento!'\); } else { console.log\('Son elementos diferentes!'\); } + +```text 7. Defina la función `mostrarBotiquin` que muestre lo que contiene nuestro botiquín (que recibe como parametro) en forma de tabla como se describe abajo. Al momento de presentar las aspirinas, muestre la cantidad aspirinas, no de blisters (_Tip: Reusa las funciones anterior_). **Bienvenido Gastón al botiquin virtual! Este es tu botiquín:** @@ -58,4 +69,5 @@ function mostrarBotiquin(nombre, botiquin){ } var nombre = prompt('¿Cuál es tu nombre?'); mostrarBotiquin(nombre, botiquin); -``` \ No newline at end of file +``` + diff --git a/botiquin/7_aplicacion_web.md b/botiquin/7_aplicacion_web.md new file mode 100644 index 0000000..38604d8 --- /dev/null +++ b/botiquin/7_aplicacion_web.md @@ -0,0 +1,23 @@ +# Aplicación Web + +1 - Abrir [https://jsbin.com/sihabu/edit?html,css,js,output](https://jsbin.com/sihabu/edit?html,css,js,output) + +2 - Guardar tu propia copia de la app haciendo click en `File` y luego en `Clone` + +3 - Con el fin de inicializar el estado deseado del botiquín, ejecutar las siguientes funciones: + +* `saveKit` +* `loadKit` +* `displayKit` + +4 - Con el fin de permitirle al usuario modificar el botiquín, definir las siguientes funciones: + +* `onNewItem` +* `onChangeCount` +* `onChangeName` +* `onIncrement` +* `onDecrement` +* `onRemove` + +5 - Comparar con la solución [https://jsbin.com/holaye/edit?html,css,js,output](https://jsbin.com/holaye/edit?html,css,js,output) + diff --git a/botiquin/8_the_end....md b/botiquin/8_the_end....md new file mode 100644 index 0000000..575aeb5 --- /dev/null +++ b/botiquin/8_the_end....md @@ -0,0 +1,13 @@ +# ¿Donde seguir leyendo? + +1. [https://github.com/javascript-101/javascript-101](https://github.com/javascript-101/javascript-101) +2. [http://ianaya89.com/javascript-101](http://ianaya89.com/javascript-101) +3. [https://jsparagatos.com/](https://jsparagatos.com/) +4. [https://github.com/getify/You-Dont-Know-JS/tree/master/up %26 going](https://github.com/getify/You-Dont-Know-JS/tree/master/up%20%26%20going) +5. [https://github.com/workshopper/javascripting](https://github.com/workshopper/javascripting) +6. [https://github.com/nhsz/intro-js](https://github.com/nhsz/intro-js) +7. [https://es.khanacademy.org/computing/computer-programming/programming](https://es.khanacademy.org/computing/computer-programming/programming) +8. [https://platzi.com/cursos/programacion-basica/](https://platzi.com/cursos/programacion-basica/) +9. [http://eloquentjavascript.net/](http://eloquentjavascript.net/) +10. [https://github.com/nhsz/intro-js](https://github.com/nhsz/intro-js) + diff --git a/botiquin/README.md b/botiquin/README.md new file mode 100644 index 0000000..4735fea --- /dev/null +++ b/botiquin/README.md @@ -0,0 +1,2 @@ +# Botiquin + diff --git a/ejercicios/README.md b/ejercicios/README.md new file mode 100644 index 0000000..0e72c29 --- /dev/null +++ b/ejercicios/README.md @@ -0,0 +1,2 @@ +# Ejercicios + diff --git a/ejercicios/botiquin/1_variables.md b/ejercicios/botiquin/1_variables.md deleted file mode 100644 index 62c641d..0000000 --- a/ejercicios/botiquin/1_variables.md +++ /dev/null @@ -1,36 +0,0 @@ -# Variables -1. En esta actividad necesitamos definir variables que almacenen la cantidad de elementos de nuestro botiquín. - En él tenemos 3 apósitos adhesivos, 1 alcohol en gel, 1 blister (_tableta_) de aspirinas y 2 pares de guantes de latex. - A su vez, es necesario mostrar las cantidades en la consola (Pista: Usa `console.log();`) - -``` javascript -var cantidadApositosAdhesivos = 3; -var cantidadAlcoholEnGel = 1; -var cantidadBlisterAspirinas = 1; -var cantidadGuantesDeLatex = 4; -console.log(cantidadApositosAdhesivos, cantidadAlcoholEnGel, cantidadBlisterAspirinas, cantidadGuantesDeLatex); -``` - - -2. Defina las variables necesarias para mostrar el nombre de los elementos que contiene nuestro botiquin. -``` javascript -var nombreApositos = 'Curitas'; -var nombreAlcohol = 'Alcohol en Gel'; -var nombreAspirinas = 'Aspirinas'; -var nombreGuantes = 'Guantes de Latex'; -console.log(nombreApositos, nombreAlcohol, nombreAspirinas, nombreGuantes); -``` - -3. Muestre en la consola, el nombre de cada elemento del botiquín junto con la cantidad correspondiente. -``` javascript -console.log(nombreApositos, ':', cantidadApositosAdhesivos); -console.log(nombreAlcohol, ':', cantidadAlcoholEnGel); -console.log(nombreAspirinas, ':', cantidadBlisterAspirinas); -console.log(nombreGuantes, ':', cantidadGuantesDeLatex); -``` -4. ¿Que sucede si queremos ver la cantidad de algun elemento que no definimos en el botiquín? Ejemplo: `cantidadDeVendas`. - -5. ¿Que problema tiene la siguiente sentencia? -``` javascript -console.log("Nuevo botiquín'); -``` \ No newline at end of file diff --git a/ejercicios/botiquin/2_operadores_expresiones.md b/ejercicios/botiquin/2_operadores_expresiones.md deleted file mode 100644 index 7309e68..0000000 --- a/ejercicios/botiquin/2_operadores_expresiones.md +++ /dev/null @@ -1,36 +0,0 @@ -# Operadores y Expresiones - -1. Pasamos por una farmacia y trajimos 1 caja de 10 apósitos adhesivos y 2 blisters de aspirinas. - Actualice las cantidades de los elementos correspondientes en nuestro botiquín. -``` javascript -var cantidadApositosAdhesivos = 3; -var cantidadBlisterAspirinas = 1; -cantidadApositosAdhesivos = cantidadApositosAdhesivos + 10; -cantidadBlisterAspirinas = cantidadBlisterAspirinas + 2; -console.log(cantidadApositosAdhesivos, cantidadBlisterAspirinas); -``` - -2. Defina una variable que tenga la cantidad total de aspirinas del botiquín sabiendo que cada blister tiene 10 aspirinas. -``` javascript -var cantidadAspirinas = cantidadBlisterAspirinas * 10; -console.log(cantidadAspirinas); -``` - -3. Defina la variable `quedanApositos` la cual determine si quedan apósitos disponibles. -``` javascript -var quedanApositos = cantidadApositosAdhesivos > 0; -console.log('¿Quedan apósitos?', quedanApositos); -``` - -4. Muestre en la consola, el nombre de cada elemento del botiquín junto con la cantidad correspondiente. -``` javascript -console.log(nombreApositos, ':', cantidadApositosAdhesivos); -console.log(nombreAspirinas, ':', cantidadBlisterAspirinas); -console.log(nombreGuantes, ':', cantidadGuantesDeLatex); -``` -5. ¿Que problema tiene el siguiente código? -``` javascript -var cantidadApositosAdhesivos = '3'; -cantidadApositosAdhesivos = cantidadApositosAdhesivos + 10; -console.log(cantidadApositosAdhesivos); -``` diff --git a/ejercicios/botiquin/3_arrays.md b/ejercicios/botiquin/3_arrays.md deleted file mode 100644 index b75a2b9..0000000 --- a/ejercicios/botiquin/3_arrays.md +++ /dev/null @@ -1,48 +0,0 @@ -# Arrays - -1. Defina el botiquín como un **arreglo** con el nombre de los elementos que contiene. -``` javascript -var botiquin = ['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex']; -console.log(botiquin); -``` - -2. Muestre en la consola la cantidad de elementos que contiene el botiquín. -``` javascript -var cantidadDeElementos = botiquin.length; -console.log(cantidadDeElementos); -``` - -3. Obtenga el primer elemento y el ultimo que contiene el botiquín. - (Tip: _Los índices de los arrays comienzan desde 0._) -``` javascript -var primerElemento = botiquin[0]; -var ultimoElemento = botiquin[ botiquin.length - 1 ]; -console.log(primerElemento, ultimoElemento); -``` - -4. Defina un arreglo con las cantidades de cada elemento del botiquín en la misma posicion definida anteriormente. - Luego muestre la cantidad de aspirinas que tiene el botiquín como `NOMBRE: CANTIDAD`. -``` javascript -var botiquin = ['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex']; -var cantidades = [13, 1, 3, 4]; -var indiceDeAspirinas = 2; -console.log(botiquin[indiceDeAspirinas], ':', cantidades[indiceDeAspirinas]); -``` - -5. Pasamos nuevamente por la farmacia y trajimos 1 paquete de gasas. Agregue este elemento al botiquín. -(Pista: Llame al método _push_ sobre el `botiquin`) -``` javascript -botiquin.push('Gasas'); -console.log(botiquin); -``` - -6. Quite el último elemento agregado del botiquín. -(Pista: Llame al método _pop_ sobre el `botiquin`) -``` javascript -var ultimoElemento = botiquin.pop(); -console.log(botiquin, ultimoElemento); -``` -7. ¿Qué elemento tomaremos en esta sentencia? -``` javascript -console.log(botiquin[ botiquin.length ]); -``` \ No newline at end of file diff --git a/ejercicios/botiquin/4_estructuras_control.md b/ejercicios/botiquin/4_estructuras_control.md deleted file mode 100644 index 60864d4..0000000 --- a/ejercicios/botiquin/4_estructuras_control.md +++ /dev/null @@ -1,37 +0,0 @@ -# Estructuras de control - -1. Muestre en la consola un mensaje si aun quedan apósitos en el botiquin, en caso contrario muestre el mensaje `'Hacen falta apósitos!'`. -``` javascript -var cantidadApositosAdhesivos = 13; -if (cantidadApositosAdhesivos > 0) { - console.log('Aún quedan apositos.'); -} else { - console.log('Hacen falta apósitos!'); -} -``` - -2. Recorra el botiquín y muestre de a uno por vez los elementos en la consola. (Pista: Usa la sentencia `while`). -``` javascript -var botiquin = ['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex']; -var indice = 0; -while(indice < botiquin.length) { - console.log(botiquin[indice]); - indice = indice + 1; -} -``` -3. Recorra el botiquín y muestre el mensaje `'Aun quedan gasas en el botiquin.'` si hay gasas en el botiquín. -``` javascript -var botiquin = ['Curitas', 'Alcohol en gel', 'Aspirinas', 'Guantes de latex']; -var indice = 0; -var quedanGasas = false; -while(indice < botiquin.length) { - if(botiquin[indice] == 'Gasas') { - quedanGasas = true; - } - indice = indice + 1; -} - -if(quedanGasas) { - console.log('Aun quedan gasas.'); -} -``` \ No newline at end of file diff --git a/ejercicios/botiquin/5_objetos.md b/ejercicios/botiquin/5_objetos.md deleted file mode 100644 index a52ec94..0000000 --- a/ejercicios/botiquin/5_objetos.md +++ /dev/null @@ -1,67 +0,0 @@ -# Objetos - -1. Defina una variable que almacene la información de los apósitos como un objeto y muestre sus propiedades en la consola. - (Pista: Defina el objeto con las propiedades `nombre` y `cantidad`). -``` javascript -var apositos = { - nombre: 'Apósitos adhesivos', - cantidad: 13 -}; -console.log(apositos.nombre, apositos.cantidad); -``` - -2. Cambie el nombre de los apósitos por `'Curitas'` y muestrelo en la consola. -``` javascript -var apositos = { - nombre: 'Apósitos adhesivos', - cantidad: 13 -}; -apositos.nombre = 'Curitas'; -console.log(apositos.nombre, apositos.cantidad); -``` -3. Agregue la propiedad `fechaDeVencimiento` al objeto de las _aspirinas_ con el valor `'12/18'`. -``` javascript -var blistersDeAspirinas = { - nombre: 'Aspirinas', - cantidad: 3 -}; -blistersDeAspirinas.fechaDeVencimiento = '12/18'; -console.log(blistersDeAspirinas); -``` -4. Cambie todos los elementos del botiquín a objetos con la misma estructura. -``` javascript -var botiquin = [ - { - nombre: 'Curitas', - cantidad: 13 - }, - { - nombre: 'Alcohol en gel', - cantidad: 11 - }, - { - nombre: 'Aspirinas', - cantidad: 3 - }, - { - nombre: 'Guantes de latex', - cantidad: 4 - } -]; -console.log(botiquin); -``` - -5. Recorra el botiquín con los nuevos objetos mostrando el `nombre` y la `cantidad` de cada elemento. -``` javascript -var indice = 0; -while(indice < botiquin.length) { - var elemento = botiquin[indice]; - console.log(elemento.nombre, elemento.cantidad); - indice = indice + 1; -} -``` - -6. ¿Qué diferencia encuentra de usar objetos sobre las soluciones del comienzo de curso? -``` -La idea es que puedan incorporar el concepto de simple de encapsulamiento y agrupamiento de información coherente. -``` \ No newline at end of file diff --git a/ejercicios/botiquin/7_aplicacion_web.md b/ejercicios/botiquin/7_aplicacion_web.md deleted file mode 100644 index e38e320..0000000 --- a/ejercicios/botiquin/7_aplicacion_web.md +++ /dev/null @@ -1,21 +0,0 @@ -Aplicación Web --- - -1 - Abrir https://jsbin.com/sihabu/edit?html,css,js,output - -2 - Guardar tu propia copia de la app haciendo click en `File` y luego en `Clone` - -3 - Con el fin de inicializar el estado deseado del botiquín, ejecutar las siguientes funciones: -- `saveKit` -- `loadKit` -- `displayKit` - -4 - Con el fin de permitirle al usuario modificar el botiquín, definir las siguientes funciones: -- `onNewItem` -- `onChangeCount` -- `onChangeName` -- `onIncrement` -- `onDecrement` -- `onRemove` - -5 - Comparar con la solución https://jsbin.com/holaye/edit?html,css,js,output \ No newline at end of file diff --git a/ejercicios/botiquin/8_the_end....md b/ejercicios/botiquin/8_the_end....md deleted file mode 100644 index 93ad640..0000000 --- a/ejercicios/botiquin/8_the_end....md +++ /dev/null @@ -1,11 +0,0 @@ -# ¿Donde seguir leyendo? -0. https://github.com/javascript-101/javascript-101 -1. http://ianaya89.com/javascript-101 -2. https://jsparagatos.com/ -3. https://github.com/getify/You-Dont-Know-JS/tree/master/up%20%26%20going -4. https://github.com/workshopper/javascripting -5. https://github.com/nhsz/intro-js -6. https://es.khanacademy.org/computing/computer-programming/programming -8. https://platzi.com/cursos/programacion-basica/ -9. http://eloquentjavascript.net/ -10. https://github.com/nhsz/intro-js \ No newline at end of file diff --git a/ejercicios/conceptuales/01.md b/ejercicios/conceptuales/01.md index 7beeafc..a496334 100644 --- a/ejercicios/conceptuales/01.md +++ b/ejercicios/conceptuales/01.md @@ -2,7 +2,7 @@ > Definición más simple, reemplazar por alert -JavaScript nos provee de un **_objeto global_** llamado `console` que nos va a permitir mostrar información en la terminal. Este objeto `console` dispone de ciertos **_métodos_** que podemos usar en cualquier momento dentro de nuestros programas. El más conocido es `log`. +JavaScript nos provee de un _**objeto global**_ llamado `console` que nos va a permitir mostrar información en la terminal. Este objeto `console` dispone de ciertos _**métodos**_ que podemos usar en cualquier momento dentro de nuestros programas. El más conocido es `log`. Veamos un ejemplo de como mostrar el número `101` usando el método `log` del objeto global `console`: @@ -11,22 +11,23 @@ Veamos un ejemplo de como mostrar el número `101` usando el método `log` del o console.log(101); ``` -> Para invocar/llamar/ejecutar un método del objeto `console` usamos `.` (punto) y `()` (paréntesis). Con el `.` le decimos a JavaScript que ese método pertenece a `console` y con los `()` invicamos/llamamos/ejecutamos el método. +> Para invocar/llamar/ejecutar un método del objeto `console` usamos `.` \(punto\) y `()` \(paréntesis\). Con el `.` le decimos a JavaScript que ese método pertenece a `console` y con los `()` invicamos/llamamos/ejecutamos el método. ## Tips * Puedo mostrar más de 1 valor a la vez separandolos por coma. Ejemplo: - ```javascript + ```javascript console.log(1, 2, 3, 4, 5); - ``` + ``` ## Ejercicios 1. Mostrar el año de tu nacimiento por la terminal. -1. Mostrar tu número favorito por la terminal. -1. Mostrar los números del 10 al 15 usando un solo `console.log`. +2. Mostrar tu número favorito por la terminal. +3. Mostrar los números del 10 al 15 usando un solo `console.log`. -[Respuestas](/respuestas/01.js) +[Respuestas](https://github.com/javascript-101/javascript-101/tree/1aaf061b22244b1de527c3b82eee9d15512654b8/respuestas/01.js) + +[Números, Cadenas de Texto y Booleanos](02.md) -[Números, Cadenas de Texto y Booleanos](/ejercicios/conceptuales/02.md) diff --git a/ejercicios/conceptuales/02.md b/ejercicios/conceptuales/02.md index 4f03293..4555023 100644 --- a/ejercicios/conceptuales/02.md +++ b/ejercicios/conceptuales/02.md @@ -1,16 +1,16 @@ -#02. Números, Cadenas de Texto y Booleanos +# 02. Números, Cadenas de Texto y Booleanos -En JavaScript existen muchos tipos de datos, en este momento vamos a focalizarnos en 3 de ellos: **_números_**, **_cadenas de caracteres_** y **_booleanos_**. +En JavaScript existen muchos tipos de datos, en este momento vamos a focalizarnos en 3 de ellos: _**números**_, _**cadenas de caracteres**_ y _**booleanos**_. -Los **_números_** (`0`, `1`, `2`, `-100`, `3000` y todos los que se te ocurran) son valores que nos van a permitir representar información numérica en nuestros programas. +Los _**números**_ \(`0`, `1`, `2`, `-100`, `3000` y todos los que se te ocurran\) son valores que nos van a permitir representar información numérica en nuestros programas. ```javascript 456; // Hola, soy un número en JavaScript ``` -Los números te van a servir para representar información cuantitativa (años, temperatura, stock, segundos, etc.) y hacer operaciones matemáticas tales como sumas, restas y multiplicaciones (sólo por mencionar algunas). +Los números te van a servir para representar información cuantitativa \(años, temperatura, stock, segundos, etc.\) y hacer operaciones matemáticas tales como sumas, restas y multiplicaciones \(sólo por mencionar algunas\). -Las **_cadenas de caracteres_**, también conocidas como `string`, son valores que vamos a representar por medio de un conjunto de caracteres encerrados entre comillas simples o dobles. +Las _**cadenas de caracteres**_, también conocidas como `string`, son valores que vamos a representar por medio de un conjunto de caracteres encerrados entre comillas simples o dobles. ```javascript '¡Mira mamá, soy una cadena de caracteres!'; // comillas simples @@ -21,7 +21,7 @@ Las **_cadenas de caracteres_**, también conocidas como `string`, son valores q 'en esta línea de código JavaScript va a dar error 😭"; ``` -Los **_booleanos_** representan valores de lógica binaria. Esto quiere decir que solo pueden representar 1 de 2 valores posibles: `true` (verdadero) o `false` (falso). +Los _**booleanos**_ representan valores de lógica binaria. Esto quiere decir que solo pueden representar 1 de 2 valores posibles: `true` \(verdadero\) o `false` \(falso\). ```javascript // Para indicar que queremos usar el valor verdadero escribimos... @@ -35,23 +35,24 @@ false; * Puedo mostrar más de 1 tipo de valor a la vez por la terminal separándolos por coma. Ejemplo: - ```javascript + ```javascript console.log(1, 'Hola', true, 'Soy una cadena de caracteres', 2); - ``` + ``` - Esto es muy útil en los casos que quieras mostrar información descriptiva al valor que estás enviando a la terminal. + Esto es muy útil en los casos que quieras mostrar información descriptiva al valor que estás enviando a la terminal. - ```javascript + ```javascript console.log('Mi edad es', 27); - ``` + ``` ## Ejercicios 1. Usando un número, mostrar tu edad por la terminal. -1. Usando una cadena de caracteres, mostrar tu nombre por la terminal. -1. Usando un booleano, mostrar el valor verdadero por la terminal. -1. Usando un solo `console.log`, mostrar los valores `1`, `200`, `'Genial'`, `false`, `true`. +2. Usando una cadena de caracteres, mostrar tu nombre por la terminal. +3. Usando un booleano, mostrar el valor verdadero por la terminal. +4. Usando un solo `console.log`, mostrar los valores `1`, `200`, `'Genial'`, `false`, `true`. -[Respuestas](/respuestas/02.js) +[Respuestas](https://github.com/javascript-101/javascript-101/tree/72a44adbbaaec1161f81796d714f7544a1906c80/respuestas/02.js) + +[Continuar con Variables](03.md) -[Continuar con Variables](/ejercicios/conceptuales/03.md) diff --git a/ejercicios/conceptuales/03.md b/ejercicios/conceptuales/03.md index 0d0bcbe..f35811a 100644 --- a/ejercicios/conceptuales/03.md +++ b/ejercicios/conceptuales/03.md @@ -1,8 +1,8 @@ -#03. Variables +# 03. Variables > explicar const-let mencionando var dejando de lado scopes -Una variable es una referencia a un valor (Suena difícil, ¿no? 🤔. Pero tranqui, no lo es). +Una variable es una referencia a un valor \(Suena difícil, ¿no? 🤔. Pero tranqui, no lo es\). Pensemos a una variable como si fuera una caja. A esta caja le vamos a poner un nombre que nos va a permitir acceder a ella cuando lo necesitemos. @@ -13,7 +13,7 @@ Para decirle a JavaScript que vamos a declarar una variable, lo hacemos escribie var miNumeroFavorito; ``` -> A esto se lo conoce como **_declarar_** una variable. +> A esto se lo conoce como _**declarar**_ una variable. Así como los valores, las variables pueden ser mostradas en la terminal usando `console.log`. Veamos que valor tiene nuestra variable `miNumeroFavorito`. @@ -31,7 +31,7 @@ console.log(miNumeroFavorito); > `undefined` es un tipo de dato en JavaScript. -Para poner un valor dentro de nuestra caja, usamos el **_operador de asignación_** que se escribe con el signo `=` (igual). +Para poner un valor dentro de nuestra caja, usamos el _**operador de asignación**_ que se escribe con el signo `=` \(igual\). ```javascript // Declaro una variable llamada `miNumeroFavorito` @@ -47,9 +47,9 @@ miNumeroFavorito = 123; console.log(miNumeroFavorito); ``` -> A esto se lo conoce como **_asignar_** una variable +> A esto se lo conoce como _**asignar**_ una variable -A una variable le podemos asignar el valor que más nos guste: un número, una cadena de caracteres o un booleano (los únicos tipos de datos que conocemos por el momento). +A una variable le podemos asignar el valor que más nos guste: un número, una cadena de caracteres o un booleano \(los únicos tipos de datos que conocemos por el momento\). Tanto la declaración como la asignación, la podemos hacer al mismo tiempo, aunque conceptualmente sean 2 instrucciones separadas. @@ -62,7 +62,7 @@ var miColorFavorito = 'Amarillo patito'; console.log(miColorFavorito); ``` -Nos queda un detalle más por explorar. Cambiar el valor de una variable (Para hacerle honor a su nombre 😂). Podemos cambiar el valor de una variable en cualquier momento y no necesariamente por el mismo tipo de dato. Una variable puede valer el número `2017` en un momento y el string `Hola mundo!` en otro. +Nos queda un detalle más por explorar. Cambiar el valor de una variable \(Para hacerle honor a su nombre 😂\). Podemos cambiar el valor de una variable en cualquier momento y no necesariamente por el mismo tipo de dato. Una variable puede valer el número `2017` en un momento y el string `Hola mundo!` en otro. ```javascript var mensaje = 2017; // Declaro y asigno la variable mensaje @@ -82,10 +82,11 @@ console.log(mensaje); // Lo muestro por la terminal. Deberías ver "Hola mundo!" ## Ejercicios 1. Declarar una variable de nombre `cantidadDeVentanasEnMiCasa` y asignarle la cantidad de ventanas que hay en tu casa. Mostrar el valor de la variable por la terminal. -1. Declarar una variable de nombre `soyHumano` y asignarle el valor `true` (verdadero). Mostrar el valor de la variable por la terminal. -1. Declarar una variable de nombre `miGustoDePizzaPreferido` y asignarle la variedad de pizza que más te guste usando un `string` (cadena de caracteres). Mostrar el valor de la variable por la terminal. -1. Mostrar por la terminal los siguientes valores `false`, `'Hola'`, `0` y `'Minions'` usando la misma variable. +2. Declarar una variable de nombre `soyHumano` y asignarle el valor `true` \(verdadero\). Mostrar el valor de la variable por la terminal. +3. Declarar una variable de nombre `miGustoDePizzaPreferido` y asignarle la variedad de pizza que más te guste usando un `string` \(cadena de caracteres\). Mostrar el valor de la variable por la terminal. +4. Mostrar por la terminal los siguientes valores `false`, `'Hola'`, `0` y `'Minions'` usando la misma variable. -[Respuestas](/respuestas/03.js) +[Respuestas](https://github.com/javascript-101/javascript-101/tree/72a44adbbaaec1161f81796d714f7544a1906c80/respuestas/03.js) + +[Continuar con Operadores](04.md) -[Continuar con Operadores](/ejercicios/conceptuales/04.md) diff --git a/ejercicios/conceptuales/04.md b/ejercicios/conceptuales/04.md index c2a874f..eaf2a86 100644 --- a/ejercicios/conceptuales/04.md +++ b/ejercicios/conceptuales/04.md @@ -1,142 +1,142 @@ -#04. Operadores +# 04. Operadores > Revisar ejercicios de operadores -Un operador es un símbolo (compuesto de 1 o más caracteres) que tiene una función predefinida en el lenguaje. +Un operador es un símbolo \(compuesto de 1 o más caracteres\) que tiene una función predefinida en el lenguaje. -Uno de ellos es el signo `=` (igual), usado para asignar el valor de la derecha a la variable de la izquierda, tal como lo aprendimos en el módulo anterior. +Uno de ellos es el signo `=` \(igual\), usado para asignar el valor de la derecha a la variable de la izquierda, tal como lo aprendimos en el módulo anterior. Los operadores más importantes son: -* Asignación (`=`): asigna un valor a una variable. +* Asignación \(`=`\): asigna un valor a una variable. - ```javascript + ```javascript var animalMasMolesto = 'Mosquito'; console.log(animalMasMolesto); // 'Mosquito' - ``` + ``` -* Adición (`+`): si se usa con números, suma ambos valores. +* Adición \(`+`\): si se usa con números, suma ambos valores. - ```javascript + ```javascript var anoQueViene = 2017 + 1; console.log(anoQueViene); // 2018 - ``` + ``` - Si se usa con strings, su función va a ser la de **_concatenar_** las dos cadenas de texto. + Si se usa con strings, su función va a ser la de _**concatenar**_ las dos cadenas de texto. - ```javascript + ```javascript var saludo = 'Hola, ' + 'Juan'; console.log(saludo); // 'Hola, Juan' - ``` + ``` -* Sustracción (`-`): resta el valor de la derecha al valor de la izquierda. +* Sustracción \(`-`\): resta el valor de la derecha al valor de la izquierda. - ```javascript + ```javascript var anoPasado = 2017 - 1; console.log(anoPasado); // 2016 - ``` + ``` -* Multiplicación (`*`): multiplica ambos valores a los lados del operador. +* Multiplicación \(`*`\): multiplica ambos valores a los lados del operador. - ```javascript + ```javascript var alCuadrado = 3 * 3; console.log(alCuadrado); // 9 - ``` + ``` -* División (`/`): divide el valor de la izquierda por el valor de la derecha. +* División \(`/`\): divide el valor de la izquierda por el valor de la derecha. - ```javascript + ```javascript var laMitad = 12 / 2; console.log(laMitad); // 6 - ``` + ``` -* Igualdad (`==`): devuelve `true` si ambos valores son iguales. +* Igualdad \(`==`\): devuelve `true` si ambos valores son iguales. - ```javascript + ```javascript var sonIguales = 'coche' == 'coche'; var sonLoMismo = 90 == 30; console.log(sonIguales); // true console.log(sonLoMismo); // false - ``` + ``` -* Desigualdad (`!=`): devuelve `true` si ambos valores son distintos. +* Desigualdad \(`!=`\): devuelve `true` si ambos valores son distintos. - ```javascript + ```javascript var sonDistintos = 'barco' != 'barco'; var sonDiferentes = 2 != 3; console.log(sonDistintos); // false console.log(sonDiferentes); // true - ``` + ``` -* Igualdad estricta (`===`): devuelve `true` si los valores son iguales y tienen el mismo tipo. +* Igualdad estricta \(`===`\): devuelve `true` si los valores son iguales y tienen el mismo tipo. - ```javascript + ```javascript var sonIguales = 8 === 8; var sonLoMismo = 75 === '75'; // '75' es un `string` console.log(sonIguales); // true console.log(sonLoMismo); // false - ``` + ``` -* Desigualdad estricta (`!==`): devuelve `true` si los valores son distintos y tienen el mismo tipo. +* Desigualdad estricta \(`!==`\): devuelve `true` si los valores son distintos y tienen el mismo tipo. - ```javascript + ```javascript var sonDistintos = 6 !== 6; var sonDiferentes = 16 !== '16'; // '16' es un `string` console.log(sonDistintos); // false console.log(sonDiferentes); // true - ``` + ``` -* Mayor (`>`): devuelve `true` si el valor de la izquierda es mayor que el valor de la derecha. +* Mayor \(`>`\): devuelve `true` si el valor de la izquierda es mayor que el valor de la derecha. - ```javascript + ```javascript var esMasGrande = 10 > 5; var esMayor = 1 > 100; console.log(esMasGrande); // true console.log(esMayor); // false - ``` + ``` -* Menor (`<`): devuelve `true` si el valor de la izquierda es menor al valor de la derecha. +* Menor \(`<`\): devuelve `true` si el valor de la izquierda es menor al valor de la derecha. - ```javascript + ```javascript var esMasChico = 400 < 1000; var esMenor = 12 < 9; console.log(esMasChico); // true console.log(esMenor); // false - ``` + ``` -* Mayor o igual (`>=`): devuelve `true` si el valor de la izquierda es mayor o igual que el valor de la derecha. +* Mayor o igual \(`>=`\): devuelve `true` si el valor de la izquierda es mayor o igual que el valor de la derecha. - ```javascript + ```javascript var esMayorOIgual = 124 >= 123; console.log(esMayorOIgual); // true - ``` + ``` -* Menor o igual (`<=`): devuelve `true` si el valor de la izquierda es menor o igual que el valor de la derecha. +* Menor o igual \(`<=`\): devuelve `true` si el valor de la izquierda es menor o igual que el valor de la derecha. - ```javascript + ```javascript var esMenorOIgual = 7 <= 9; console.log(esMenorOIgual); // true - ``` + ``` ## Tips * Podés usar los operadores para trabajar con variables! Ejemplo: - ```javascript + ```javascript var golesEquipo1 = 14; var golesEquipo2 = 10; @@ -145,10 +145,11 @@ Los operadores más importantes son: console.log(ganoEquipo1); // true console.log(empate); // false - ``` + ``` + * Muchas veces, no es necesario guardar los resultados de las operaciones en variables: podés mostrar o usar el valor que devuelve la expresión directamente. Ejemplo: - ```javascript + ```javascript var golesEquipo1 = 7; var golesEquipo2 = 7; @@ -156,50 +157,48 @@ Los operadores más importantes son: // Significa que el partido fue empate console.log('¿Fue empate?'); console.log(golesEquipo1 === golesEquipo2); - ``` + ``` ## Ejercicios 1. Declarar una variable llamada `noValgoNi5` y asignarle el valor `4`. Mostrar el valor de la variable por la terminal. -1. Declarar 3 variables: - - * `miAnoDeNacimiento` y asignarle el valor de tu año de nacimiento. - * `meGustariaTener80Anos` y asignarle el número `80`. - * `voyATener80ElAno` y asignarle el resultado de sumar las 2 variables anteriores - - Mostrar por la terminal el año en el que vas a cumplir 80 años. -1. Declarar 3 variables: - - * `costoDeUnaTele` y asignarle el valor `10000`. - * `ahorros` y asignarle el valor `9000`. - * `dineroQueMeFalta` y asignarle el resultado de restar las 2 variables anteriores. - - Mostrar por la terminal cuanto dinero te falta para comprar la tele. -1. Declarar 3 variables: - - * `diasPorAno` y asignarle el número `365` - * `cantidadDeAnosEnUnaDecada` y asignarle el número `10` - * `cantidadDeDiasEnUnaDecada` y asignarle el resultado de multiplicar las 2 variables anteriores. - - Mostrar por la terminal cuantos días hay en una década. -1. Teniendo en cuenta que una pizza siempre tiene 8 porciones, mostrar por la terminal cuantas pizzas tengo en la mesa si conté 24 porciones. - - Preguntas que te deberías hacer para resolver este ejercicio: ¿Qué números menciona el enunciado?, ¿Los puedo guardar en variables?, ¿Qué cuenta puedo hacer para obtener el resultado? -1. Declarar una variable de nombre `miAnimalFavorito` y asignarle como valor el string que represente el animal que más te gusta. Escribir el código necesario para mostrar por la terminal el valor `true` si el animal que más te gusta es un `'perro'`. De lo contrario, mostrar `false`. Usar el operador de igualdad (`==`). -1. Usar el operador de desigualdad (`!=`) para mostrar por la terminal el resultado de comparar la cadena de caracteres `'flan'` y `'flan con dulce de leche'` (Podés crear todas las variables que quieras, incluso podés resolverlo sin usar variables). -1. Declarar una variable llamada `soyMayorDeEdad` y asignarle el resultado de comparar tu edad y el número `17` usando el operador `>` (mayor). Mostrar el valor de la variable por la terminal. -1. Declarar una variable llamada `soyMenorDe25` y asignarle el resultado de comparar tu edad y el número `25` usando el operador `<` (menor). Mostrar el valor de la variable por la terminal. -1. Declarar una variable llamada `estamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual es igual a `'Enero'`. Hacerlo usando el operador de igualdad estricta (`===`). Mostrar el valor de la variable por la terminal. -1. Declarar una variable llamada `noEstamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual y el string `'Enero'` son diferentes. Hacerlo usando el operador de desigualdad estricta (`!==`). Mostrar el valor de la variable por la terminal. -1. Declarar 3 variables: - +2. Declarar 3 variables: + * `miAnoDeNacimiento` y asignarle el valor de tu año de nacimiento. + * `meGustariaTener80Anos` y asignarle el número `80`. + * `voyATener80ElAno` y asignarle el resultado de sumar las 2 variables anteriores + + Mostrar por la terminal el año en el que vas a cumplir 80 años. +3. Declarar 3 variables: + * `costoDeUnaTele` y asignarle el valor `10000`. + * `ahorros` y asignarle el valor `9000`. + * `dineroQueMeFalta` y asignarle el resultado de restar las 2 variables anteriores. + + Mostrar por la terminal cuanto dinero te falta para comprar la tele. +4. Declarar 3 variables: + * `diasPorAno` y asignarle el número `365` + * `cantidadDeAnosEnUnaDecada` y asignarle el número `10` + * `cantidadDeDiasEnUnaDecada` y asignarle el resultado de multiplicar las 2 variables anteriores. + + Mostrar por la terminal cuantos días hay en una década. +5. Teniendo en cuenta que una pizza siempre tiene 8 porciones, mostrar por la terminal cuantas pizzas tengo en la mesa si conté 24 porciones. + + Preguntas que te deberías hacer para resolver este ejercicio: ¿Qué números menciona el enunciado?, ¿Los puedo guardar en variables?, ¿Qué cuenta puedo hacer para obtener el resultado? + +6. Declarar una variable de nombre `miAnimalFavorito` y asignarle como valor el string que represente el animal que más te gusta. Escribir el código necesario para mostrar por la terminal el valor `true` si el animal que más te gusta es un `'perro'`. De lo contrario, mostrar `false`. Usar el operador de igualdad \(`==`\). +7. Usar el operador de desigualdad \(`!=`\) para mostrar por la terminal el resultado de comparar la cadena de caracteres `'flan'` y `'flan con dulce de leche'` \(Podés crear todas las variables que quieras, incluso podés resolverlo sin usar variables\). +8. Declarar una variable llamada `soyMayorDeEdad` y asignarle el resultado de comparar tu edad y el número `17` usando el operador `>` \(mayor\). Mostrar el valor de la variable por la terminal. +9. Declarar una variable llamada `soyMenorDe25` y asignarle el resultado de comparar tu edad y el número `25` usando el operador `<` \(menor\). Mostrar el valor de la variable por la terminal. +10. Declarar una variable llamada `estamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual es igual a `'Enero'`. Hacerlo usando el operador de igualdad estricta \(`===`\). Mostrar el valor de la variable por la terminal. +11. Declarar una variable llamada `noEstamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual y el string `'Enero'` son diferentes. Hacerlo usando el operador de desigualdad estricta \(`!==`\). Mostrar el valor de la variable por la terminal. +12. Declarar 3 variables: * `miNotaEnElParcial` y asignarle un `8` * `notaMinimaParaAprobar` y asignarle un `6` - * `estoyAprobado` y asignarle el resultado de comparar el número las dos variables anteriores usando el operador `>=` (Mayor o igual). + * `estoyAprobado` y asignarle el resultado de comparar el número las dos variables anteriores usando el operador `>=` \(Mayor o igual\). + + Mostrar el valor de la variable `estoyAprobado` por la terminal. +13. Declarar una variable llamada `esHoraDeAlmorzar` cuyo valor sea el resultado de comparar con el operador `<=` \(Menor o igual\) si la hora actual es menor o igual a `12`. Mostrar el valor por la terminal. - Mostrar el valor de la variable `estoyAprobado` por la terminal. -1. Declarar una variable llamada `esHoraDeAlmorzar` cuyo valor sea el resultado de comparar con el operador `<=` (Menor o igual) si la hora actual es menor o igual a `12`. Mostrar el valor por la terminal. +[Respuestas](https://github.com/javascript-101/javascript-101/tree/72a44adbbaaec1161f81796d714f7544a1906c80/respuestas/04.js) -[Respuestas](/respuestas/04.js) +[Continuar con Condicionales](05.md) -[Continuar con Condicionales](/ejercicios/conceptuales/05.md) diff --git a/ejercicios/conceptuales/05.md b/ejercicios/conceptuales/05.md index 62bc677..b89bdc4 100644 --- a/ejercicios/conceptuales/05.md +++ b/ejercicios/conceptuales/05.md @@ -1,10 +1,10 @@ -#05. Condicionales +# 05. Condicionales > Revisar ejercicio 3 de condicionales -En muchos casos, necesitamos tomar decisiones en un programa para ejecutar diferentes sentencias si una condición se cumple. Por ejemplo, mostrar en la terminal un mensaje que diga `'Estás aprobado'` si la variable `notaDelParcial` es `>=` (Mayor o igual) a `4`. +En muchos casos, necesitamos tomar decisiones en un programa para ejecutar diferentes sentencias si una condición se cumple. Por ejemplo, mostrar en la terminal un mensaje que diga `'Estás aprobado'` si la variable `notaDelParcial` es `>=` \(Mayor o igual\) a `4`. -Este tipo de decisiones en el código las vamos a escribir usando la sentencia `if` seguida de una expresión entre `()` (paréntesis) que debe poder ser interpretada como `true` para ejecutar el código que está entre `{}` (llaves). +Este tipo de decisiones en el código las vamos a escribir usando la sentencia `if` seguida de una expresión entre `()` \(paréntesis\) que debe poder ser interpretada como `true` para ejecutar el código que está entre `{}` \(llaves\). Veamos un ejemplo para que sea más claro: @@ -21,7 +21,7 @@ if (notaDelParcial >= 4) { } ``` -También existe la clausula `else` (no obligatoria, podés omitirla si no es necesaria) que nos permite especificar las sentencias a ejecutar si la condición original del `if` no se cumplió. +También existe la clausula `else` \(no obligatoria, podés omitirla si no es necesaria\) que nos permite especificar las sentencias a ejecutar si la condición original del `if` no se cumplió. ```javascript // Declaro y asigno una variable @@ -42,7 +42,7 @@ if (notaDelParcial >= 4) { } ``` -Por último, existe la clausula `else if` (no obligatoria, podés omitirla si no es necesaria) que tiene la misma función que el `if` que ya conocés, solo que podés escribir más de uno para abarcar más casos. +Por último, existe la clausula `else if` \(no obligatoria, podés omitirla si no es necesaria\) que tiene la misma función que el `if` que ya conocés, solo que podés escribir más de uno para abarcar más casos. ```javascript // Declaro y asigno una variable @@ -83,7 +83,7 @@ if (temperaturaActual < 10) { * Dentro de cada `if`, `if else` o `else` podés declarar y asignar variables, mostrar mensajes por la terminal o cualquier otra sentencia que sepas. No te limites solo a estos ejemplos. * Siempre que tengas un caso como el ejemplo anterior, un consejo es: asignar el mensaje a mostrar en una variable y hacer el `console.log` mostrando su valor al final. - ```javascript + ```javascript // Declaro y asigno una variable var temperaturaActual = 24; @@ -123,21 +123,20 @@ if (temperaturaActual < 10) { // 'Que lindo sería poder meterme a la pileta' porque la temperatura // es 24 grados, por lo que el código pasó por el tercer `else if` console.log(mensajeAMostrar); - ``` + ``` ## Ejercicios 1. Declarar una variable que se llame `ganeLaCarrera` y asignarle el valor `false`. Mostrar por la terminal un mensaje que diga `'Ganaste'` si `ganeLaCarrera` es verdadero y `'Perdiste'` si su valor es falso. -1. Declarar una variable que se llame `posicionEnLaCarrera` y asignarle el número `6`. Mostrar por la terminal uno de los siguientes mensajes según la posición que salió el corredor: +2. Declarar una variable que se llame `posicionEnLaCarrera` y asignarle el número `6`. Mostrar por la terminal uno de los siguientes mensajes según la posición que salió el corredor: + * `'FELICITACIONES, SALISTE 1RO'` si la `posicionEnLaCarrera` es 1. + * `'Te falto poquito para ganar'` si la `posicionEnLaCarrera` es 2. + * `'Sos un orgullo para tu familia'` si la `posicionEnLaCarrera` es 3. + * `'Volvé a tu casa'` si la `posicionEnLaCarrera` es mayor a 3. + * `'No tires fruta'` si la `posicionEnLaCarrera` es otro valor no contemplado antes. +3. Repetir el ejercicio anterior pero usando un solo `console.log` en todo el programa. - * `'FELICITACIONES, SALISTE 1RO'` si la `posicionEnLaCarrera` es 1. - * `'Te falto poquito para ganar'` si la `posicionEnLaCarrera` es 2. - * `'Sos un orgullo para tu familia'` si la `posicionEnLaCarrera` es 3. - * `'Volvé a tu casa'` si la `posicionEnLaCarrera` es mayor a 3. - * `'No tires fruta'` si la `posicionEnLaCarrera` es otro valor no contemplado antes. +[Respuestas](https://github.com/javascript-101/javascript-101/tree/72a44adbbaaec1161f81796d714f7544a1906c80/respuestas/05.js) -1. Repetir el ejercicio anterior pero usando un solo `console.log` en todo el programa. +[Continuar con Parcialito :speak\_no\_evil:](06.md) -[Respuestas](/respuestas/05.js) - -[Continuar con Parcialito :speak_no_evil:](/ejercicios/conceptuales/06.md) diff --git a/ejercicios/conceptuales/06.md b/ejercicios/conceptuales/06.md index 0edef44..5b3d589 100644 --- a/ejercicios/conceptuales/06.md +++ b/ejercicios/conceptuales/06.md @@ -1,30 +1,27 @@ -#06. Parcialito 🙊 +# 06. Parcialito 🙊 -> Ver de adaptar parcialito a trabajo en equipo de a 2 personas. Cambiar el nombre -> agregar requerimientos incrementales, al final del workshop hacer pasar a varios grupos a ver por qué eligieron esas ideas +> Ver de adaptar parcialito a trabajo en equipo de a 2 personas. Cambiar el nombre agregar requerimientos incrementales, al final del workshop hacer pasar a varios grupos a ver por qué eligieron esas ideas La idea de este módulo es ejercitar lo que aprendimos hasta el momento. Para ello, vamos a plantear 2 ejercicios: -1. Juan y Pedro son hermanos. La semana pasada tuvieron una prueba en el colegio y hoy la profesora les dio la nota. Escribir un programa que: - 1. Declare y asigne 2 variables de tipo número: una con la nota de Juan (`10`) y otra con la nota de Pedro (`8`). Nombrá a las variables como más te guste. - 1. Mostrar por la terminal el valor más grande de los 2. - 1. Considerá el caso de que pueden ser iguales 🙊. Si eso ocurre, mostrar el mensaje: `'Ambos hijos tuvieron la misma nota'`. +1. Juan y Pedro son hermanos. La semana pasada tuvieron una prueba en el colegio y hoy la profesora les dio la nota. Escribir un programa que: 1. Declare y asigne 2 variables de tipo número: una con la nota de Juan \(`10`\) y otra con la nota de Pedro \(`8`\). Nombrá a las variables como más te guste. 1. Mostrar por la terminal el valor más grande de los 2. 1. Considerá el caso de que pueden ser iguales 🙊. Si eso ocurre, mostrar el mensaje: `'Ambos hijos tuvieron la misma nota'`. - Casos que te pueden ayudar para probar: + Casos que te pueden ayudar para probar: - 1. Si Juan se saca un `4` y Pedro un `6`. Mostrar `6`. - 1. Si Juan se saca un `9` y Pedro un `8`. Mostrar `9`. - 1. Si ambos se sacan un `7`, mostrar `'Ambos hijos tuvieron la misma nota'`. + 1. Si Juan se saca un `4` y Pedro un `6`. Mostrar `6`. + 2. Si Juan se saca un `9` y Pedro un `8`. Mostrar `9`. + 3. Si ambos se sacan un `7`, mostrar `'Ambos hijos tuvieron la misma nota'`. -1. Una farmacia hace el 15% de descuento a sus clientes si la compra es mayor a 100 pesos. Escribir un programa que dado el monto de una compra como valor numérico, diga cuanto debe abonar el cliente aplicando el descuento si es necesario. +2. Una farmacia hace el 15% de descuento a sus clientes si la compra es mayor a 100 pesos. Escribir un programa que dado el monto de una compra como valor numérico, diga cuanto debe abonar el cliente aplicando el descuento si es necesario. - > Tip: Para obtener el porcentaje de un número podés usar la siguiente fórmula: `número * descuento / 100` (La famosa regla de 3 simple 😮). + > Tip: Para obtener el porcentaje de un número podés usar la siguiente fórmula: `número * descuento / 100` \(La famosa regla de 3 simple 😮\). - Si el monto de compra es de 500 pesos, ¿cuánto debe pagar el cliente? + Si el monto de compra es de 500 pesos, ¿cuánto debe pagar el cliente? - Casos que te pueden ayudar para probar: + Casos que te pueden ayudar para probar: - 1. Si el monto de la compra es `55`. Mostrar `55` (Es menor a 100, por lo que no se aplica descuento). - 1. Si el monto de la compra es 200. Mostrar `170`, equivalente a `200 - descuento`. Para calcular el descuento ya te dí una pista 😉. + 1. Si el monto de la compra es `55`. Mostrar `55` \(Es menor a 100, por lo que no se aplica descuento\). + 2. Si el monto de la compra es 200. Mostrar `170`, equivalente a `200 - descuento`. Para calcular el descuento ya te dí una pista 😉. + +[Respuestas](https://github.com/javascript-101/javascript-101/tree/72a44adbbaaec1161f81796d714f7544a1906c80/respuestas/06.js) -[Respuestas](/respuestas/06.js) diff --git a/ejercicios/conceptuales/README.md b/ejercicios/conceptuales/README.md new file mode 100644 index 0000000..2a2756a --- /dev/null +++ b/ejercicios/conceptuales/README.md @@ -0,0 +1,2 @@ +# Conceptuales + From 087b53d9bb7311a9a13db24f975703b8d9590b6a Mon Sep 17 00:00:00 2001 From: CaroAmarillo Date: Sat, 1 Jun 2019 22:46:51 -0300 Subject: [PATCH 7/8] delete excercise number from titles --- ejercicios/conceptuales/01.md | 2 +- ejercicios/conceptuales/02.md | 2 +- ejercicios/conceptuales/03.md | 2 +- ejercicios/conceptuales/04.md | 2 +- ejercicios/conceptuales/05.md | 2 +- ejercicios/conceptuales/06.md | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ejercicios/conceptuales/01.md b/ejercicios/conceptuales/01.md index a496334..67f444e 100644 --- a/ejercicios/conceptuales/01.md +++ b/ejercicios/conceptuales/01.md @@ -1,4 +1,4 @@ -# 01. console.log +# console.log > Definición más simple, reemplazar por alert diff --git a/ejercicios/conceptuales/02.md b/ejercicios/conceptuales/02.md index 4555023..e0f3745 100644 --- a/ejercicios/conceptuales/02.md +++ b/ejercicios/conceptuales/02.md @@ -1,4 +1,4 @@ -# 02. Números, Cadenas de Texto y Booleanos +# Números, Cadenas de Texto y Booleanos En JavaScript existen muchos tipos de datos, en este momento vamos a focalizarnos en 3 de ellos: _**números**_, _**cadenas de caracteres**_ y _**booleanos**_. diff --git a/ejercicios/conceptuales/03.md b/ejercicios/conceptuales/03.md index f35811a..0be1c69 100644 --- a/ejercicios/conceptuales/03.md +++ b/ejercicios/conceptuales/03.md @@ -1,4 +1,4 @@ -# 03. Variables +# Variables > explicar const-let mencionando var dejando de lado scopes diff --git a/ejercicios/conceptuales/04.md b/ejercicios/conceptuales/04.md index eaf2a86..cf8e5f8 100644 --- a/ejercicios/conceptuales/04.md +++ b/ejercicios/conceptuales/04.md @@ -1,4 +1,4 @@ -# 04. Operadores +# Operadores > Revisar ejercicios de operadores diff --git a/ejercicios/conceptuales/05.md b/ejercicios/conceptuales/05.md index b89bdc4..6772649 100644 --- a/ejercicios/conceptuales/05.md +++ b/ejercicios/conceptuales/05.md @@ -1,4 +1,4 @@ -# 05. Condicionales +# Condicionales > Revisar ejercicio 3 de condicionales diff --git a/ejercicios/conceptuales/06.md b/ejercicios/conceptuales/06.md index 5b3d589..d7da897 100644 --- a/ejercicios/conceptuales/06.md +++ b/ejercicios/conceptuales/06.md @@ -1,4 +1,4 @@ -# 06. Parcialito 🙊 +# Parcialito 🙊 > Ver de adaptar parcialito a trabajo en equipo de a 2 personas. Cambiar el nombre agregar requerimientos incrementales, al final del workshop hacer pasar a varios grupos a ver por qué eligieron esas ideas From 24ef3815ecd8c318c6376d51245970fbca307e96 Mon Sep 17 00:00:00 2001 From: CaroAmarillo Date: Sat, 1 Jun 2019 23:02:00 -0300 Subject: [PATCH 8/8] delete unnecessary exercise --- ejercicios/conceptuales/04.md | 30 +++++++++--------------------- respuestas/05.js | 19 +------------------ 2 files changed, 10 insertions(+), 39 deletions(-) diff --git a/ejercicios/conceptuales/04.md b/ejercicios/conceptuales/04.md index cf8e5f8..c68cd76 100644 --- a/ejercicios/conceptuales/04.md +++ b/ejercicios/conceptuales/04.md @@ -1,6 +1,4 @@ -# Operadores - -> Revisar ejercicios de operadores +# **Operadores** Un operador es un símbolo \(compuesto de 1 o más caracteres\) que tiene una función predefinida en el lenguaje. @@ -174,29 +172,19 @@ Los operadores más importantes son: * `dineroQueMeFalta` y asignarle el resultado de restar las 2 variables anteriores. Mostrar por la terminal cuanto dinero te falta para comprar la tele. -4. Declarar 3 variables: - * `diasPorAno` y asignarle el número `365` - * `cantidadDeAnosEnUnaDecada` y asignarle el número `10` - * `cantidadDeDiasEnUnaDecada` y asignarle el resultado de multiplicar las 2 variables anteriores. - - Mostrar por la terminal cuantos días hay en una década. -5. Teniendo en cuenta que una pizza siempre tiene 8 porciones, mostrar por la terminal cuantas pizzas tengo en la mesa si conté 24 porciones. - - Preguntas que te deberías hacer para resolver este ejercicio: ¿Qué números menciona el enunciado?, ¿Los puedo guardar en variables?, ¿Qué cuenta puedo hacer para obtener el resultado? - -6. Declarar una variable de nombre `miAnimalFavorito` y asignarle como valor el string que represente el animal que más te gusta. Escribir el código necesario para mostrar por la terminal el valor `true` si el animal que más te gusta es un `'perro'`. De lo contrario, mostrar `false`. Usar el operador de igualdad \(`==`\). -7. Usar el operador de desigualdad \(`!=`\) para mostrar por la terminal el resultado de comparar la cadena de caracteres `'flan'` y `'flan con dulce de leche'` \(Podés crear todas las variables que quieras, incluso podés resolverlo sin usar variables\). -8. Declarar una variable llamada `soyMayorDeEdad` y asignarle el resultado de comparar tu edad y el número `17` usando el operador `>` \(mayor\). Mostrar el valor de la variable por la terminal. -9. Declarar una variable llamada `soyMenorDe25` y asignarle el resultado de comparar tu edad y el número `25` usando el operador `<` \(menor\). Mostrar el valor de la variable por la terminal. -10. Declarar una variable llamada `estamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual es igual a `'Enero'`. Hacerlo usando el operador de igualdad estricta \(`===`\). Mostrar el valor de la variable por la terminal. -11. Declarar una variable llamada `noEstamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual y el string `'Enero'` son diferentes. Hacerlo usando el operador de desigualdad estricta \(`!==`\). Mostrar el valor de la variable por la terminal. -12. Declarar 3 variables: +4. Declarar una variable de nombre `miAnimalFavorito` y asignarle como valor el string que represente el animal que más te gusta. Escribir el código necesario para mostrar por la terminal el valor `true` si el animal que más te gusta es un `'perro'`. De lo contrario, mostrar `false`. Usar el operador de igualdad \(`==`\). +5. Usar el operador de desigualdad \(`!=`\) para mostrar por la terminal el resultado de comparar la cadena de caracteres `'flan'` y `'flan con dulce de leche'` \(Podés crear todas las variables que quieras, incluso podés resolverlo sin usar variables\). +6. Declarar una variable llamada `soyMayorDeEdad` y asignarle el resultado de comparar tu edad y el número `17` usando el operador `>` \(mayor\). Mostrar el valor de la variable por la terminal. +7. Declarar una variable llamada `soyMenorDe25` y asignarle el resultado de comparar tu edad y el número `25` usando el operador `<` \(menor\). Mostrar el valor de la variable por la terminal. +8. Declarar una variable llamada `estamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual es igual a `'Enero'`. Hacerlo usando el operador de igualdad estricta \(`===`\). Mostrar el valor de la variable por la terminal. +9. Declarar una variable llamada `noEstamosEnEnero` y asignarle el resultado de comparar si el nombre del mes actual y el string `'Enero'` son diferentes. Hacerlo usando el operador de desigualdad estricta \(`!==`\). Mostrar el valor de la variable por la terminal. +10. Declarar 3 variables: * `miNotaEnElParcial` y asignarle un `8` * `notaMinimaParaAprobar` y asignarle un `6` * `estoyAprobado` y asignarle el resultado de comparar el número las dos variables anteriores usando el operador `>=` \(Mayor o igual\). Mostrar el valor de la variable `estoyAprobado` por la terminal. -13. Declarar una variable llamada `esHoraDeAlmorzar` cuyo valor sea el resultado de comparar con el operador `<=` \(Menor o igual\) si la hora actual es menor o igual a `12`. Mostrar el valor por la terminal. +11. Declarar una variable llamada `esHoraDeAlmorzar` cuyo valor sea el resultado de comparar con el operador `<=` \(Menor o igual\) si la hora actual es menor o igual a `12`. Mostrar el valor por la terminal. [Respuestas](https://github.com/javascript-101/javascript-101/tree/72a44adbbaaec1161f81796d714f7544a1906c80/respuestas/04.js) diff --git a/respuestas/05.js b/respuestas/05.js index 4ded8f5..2b3fad6 100644 --- a/respuestas/05.js +++ b/respuestas/05.js @@ -40,23 +40,6 @@ var dineroQueMeFalta = costoDeUnaTele - ahorros; console.log(dineroQueMeFalta); -/* - Declarar 3 variables: - - * `diasPorAno` y asignarle el número `365` - * `cantidadDeAnosEnUnaDecada` y asignarle el número `10` - * `cantidadDeDiasEnUnaDecada` y asignarle el resultado de multiplicar las 2 variables anteriores. - - Mostrar por la terminal cuantos días hay en una década. -*/ - -var diasPorAno = 365; -var cantidadDeAnosEnUnaDecada = 10; - -var cantidadDeDiasEnUnaDecada = 365 * 10; - -console.log(cantidadDeDiasEnUnaDecada); - /* Teniendo en cuenta que una pizza siempre tiene 8 porciones, mostrar por la terminal cuantas pizzas tengo en la mesa si conté 24 porciones. @@ -143,4 +126,4 @@ console.log(estoyAprobado); var esHoraDeAlmorzar = 19 <= 12; -console.log(esHoraDeAlmorzar); +console.log(esHoraDeAlmorzar); \ No newline at end of file