JavaScript Spanish Guide
JavaScript Spanish Guide
Introducción a JavaScript
Es un lenguaje muy utilizado con una sintaxis bastante parecida a Gobstones.
function doble(numero) {
return 2 * numero;
}
Tener en cuenta que las funciones se pueden usar dentro de otras funciones tal como sería este
caso:
function doble(numero) {
return 2 * numero;
}
function siguienteDelDoble(numero) {
return doble(numero) + 1;
}
Probando funciones
Las funciones se pueden probar con la consola.
Haciendo cuentas
+ —> SUMA
- —> RESTA
* —> MULTIPLICACIÓN
/ —> DIVISIÓN
JavaScript 1
A las funciones hay que prefijarlas con Math. como por ejemplo Math.round , Math.max y
Math.min
Poniendo topes
Operadores en JavaScript!!!!
===
valores iguales
>=
mayores o iguales
>
mayores
< menores
<=
menores o iguales
Booleanos
Se puede hacer la conjunción lógica entre dos booleanos mediante el operador && :
hayComida && hayBebida
Strings
JavaScript 2
Los strings están encerrados entre comillas simples o dobles
longitud("biblioteca")
10
Se pueden concatenar
"aa" + "bb"
"aabb"
Elif is else if
1479
Números cantidades + , - , * , % , > , etc
true
Boolean valores de verdad && , ! , etc
JavaScript 3
"hola"
Strings texto longitud ,
comienzaCon , etc
JavaScript no diferencia funciones de procedimientos: todos pueden tener efectos y todos pueden
o no tener retorno.
Es decir que:
Las variables nos permiten nombrar y reutilizar valores. Similar a cómo los procedimientos y
funciones nos permiten dar nombres y reutilizar soluciones a problemas más pequeños.
let primerMes = "enero"
Las variables declaradas dentro de una function, conocidas como variables locales, no presentan
mayor misterio. Sin embargo, hay que tener un particular cuidado: sólo se pueden utilizar desde
dentro de la function en cuestión. Si quiero referenciarla desde un programa:
Sin embargo, las variables declaradas directamente en el programa, conocidas como variables
globales, pueden ser utilizadas desde cualquier function.
Actualizaciones como duplicar, triplicar, incrementar en uno o en una cierta cantidad son tan
comunes que JavaScript presenta algunos atajos:
x += y; //equivalente a x = x + y;
x *= y; //equivalente a x = x * y;
x -= y; //equivalente a x = x - y;
x ++ ; //equivalente a x = x + 1;
JavaScript 4
En el mundo de la lógica estas expresiones se llaman proposiciones. Pero… ¿qué cosas pueden
ser una proposición? Sólo hace falta que porten un valor de verdad, es decir, cualquier expresión
booleana puede ser una proposición.
Title A B A⊻B
Untitled @September 24, 2021 @September 24, 2021 @September 24, 2021
Cuando una expresión matemática tiene varios operadores, sabemos que las multiplicaciones y
divisiones se efectuarán antes que las sumas y las restas:
Al igual que en matemática, cuando usamos operadores lógicos las expresiones se evalúan en un
orden determinado llamado precedencia.
Como ves, para representar a un conjunto de strings, colocamos todos esos strings que nos
interesan, entre corchetes ( [ y ] ) separados por comas. Fácil, ¿no?
Genial, ¡parece que una lista puede contener cualquier tipo de elemento! Podemos tener listas de
booleanos, de números, de strings, de listas...
Y no sólo eso, sino que además pueden contener cualquier cantidad de elementos: uno, dos,
quince, cientos.
¿Podremos entonces tener listas vacías, es decir, que no tengan elementos? ¡Por supuesto!
JavaScript 5
let unaListaVacia = []
Las listas son muy útiles para contener múltiples elementos. ¡Pero hay más! También podemos
agregarle elementos en cualquier momento, utilizando la función agregar , que recibe dos
parámetros: la lista y el elemento. Por ejemplo:
let pertenencias = ["espada", "escudo", "antorcha"];
//longitud(pertenencias) devuelve 3;
Como vemos, agregar suma un elemento a la lista, lo cual hace que su tamaño aumente
FOR
function saludar(personas) {
for(let persona of personas) {
imprimir("hola " + persona);
}
}
Los monumentos que probaste en el ejercicio anterior están representados como registros, y cada
una de sus características (nombre, locación, año de construcción) son campos del registro. Por
cierto, ¡podemos crear registros de cualquier cosa, con los campos que querramos!
let torreEiffel = { nombre: "Torre Eiffel", locacion: "París, Francia", anioDeConstruccion: 1889
};
En un registro vamos a guardar información relacionada a una única cosa (por ejemplo un
monumento o una persona), pero los tipos de los campos pueden cambiar. Por ejemplo, el
nombre y la ubicación de un monumento son strings, pero su año de construcción es un número.
Cuando consultaste los registros existentes, se veía algo parecido a lo siguiente:
tajMahal
{ nombre: "Taj Mahal", locacion: "Agra, India", anioDeConstruccion: 1653 }
Esa consulta era porque estábamos viendo al registro tajMahal completo, incluyendo todos sus
campos. ¡Pero también se puede consultar por un campo particular! Mirá :
tajMahal.locacion
"Agra, India"
La sintaxis para modificar campos de registros es muy similar a lo que hacemos para cambiar los
valores de las variables. Por ejemplo, para cambiar la temperatura de un planeta:
saturno.temperaturaPromedio = - 140;
JavaScript 6
Ahora imaginá que tenemos un registro para representar un archivo, del que sabemos su ruta
(dónde está guardado) y su fecha de creación. Si queremos cambiar su ruta podemos hacer...
leeme
{ ruta: "C:\leeme.txt", creacion: "23/09/2004" }
moverArchivo(leeme, "C:\documentos\leeme.txt")
Unos ejercicios atrás te contamos la diferencia entre listas y registros. ¡Pero eso no significa que
no podamos usar ambas estructuras a la vez!
Por ejemplo, una lista puede ser el campo de un registro. Mirá estos registros de postres, de los
cuales sabemos cuántos minutos de cocción requieren y sus ingredientes:
let flanCasero = { ingredientes: ["huevos", "leche", "azúcar", "vainilla"],
tiempoDeCoccion: 50 }
let cheesecake = { ingredientes: ["queso crema", "frambuesas"], tiempoDeCoccion: 80 }
let lemonPie = { ingredientes: ["jugo de limón", "almidón de maíz", "leche", "huevos"],
tiempoDeCoccion: 65 }
En el ejercicio anterior te mostramos que un registro puede tener una lista entre sus campos. ¿Y
al revés? ¿Podemos tener una lista de registros?
¡Sí! Así como trabajamos con listas de números, booleanos, strings o más listas, también
podemos listar registros. Se puede hacer todo lo que hacías antes, como por ejemplo remover ,
saber su longitud o preguntar por el elemento de cierta posición utilizando los corchetes [] .
Lo que tenemos que hacer, entonces, es repetir la operación de acumular varias veces, una por
cada elemento de la lista. ¡Digamos hola (nuevamente) al for...of !
function gananciaTotal(balancesDeUnPeriodo) {
let sumatoria = 0;
for ( let balance of balancesDeUnPeriodo) {
sumatoria = sumatoria + balance.ganancia;
}
return sumatoria;
}
Como ves, el for...of nos permite visitar y hacer algo con cada elemento de una lista; en este
caso, estaremos visitando cada balance de balancesDeUnPeriodo .
Como podés ver todos los promedios se basan en el mismo principio . Sumar una cantidad
determinada elementos y dividir el resultado por esa cantidad. Si quisiéramos realizar una
función promedio genérica sería algo así:
function promedio(listaDeNumeros) {
return sumatoria(listaDeNumeros) / longitud(listaDeNumeros);
}
function sumatoria(listaDeNumeros) {
JavaScript 7
let sumatoria = 0;
for ( let numero of listaDeNumeros) {
sumatoria = sumatoria + numero;
}
return sumatoria;
}
JavaScript 8