Java Script
Java Script
matrices y logaritmos
https://www.aprendejavascript.dev/
Java script
A es menor que B
Variables:
let numero =
let welcomeText =
let isCool =
ejemplos:
Numero + 2 → 5 + 2
Const PI = 3,14
No se puede PI = 4 → error.
Typeof -> devuelve el tipo de variable u operando que se ha usado, es decir, el tipo que
es un operando o el tipo que es un valor. Siempre añadir comillas después de un === y
el tipo de variable o lo que queramos.
Existe, sin embargo, un valor especial en JavaScript, null, que es considerado un bug en
el lenguaje. El operador typeof devuelve "object" cuando se usa con null:
Por eso, si quieres comprobar si una variable es null, debes usar la comparación
estricta === “”
Una vez que tenemos expresiones lógicas (typeof ===), podemos empezar a encadenar
operadores lógicos para comprobar múltiples condiciones:
Comentarios:
En JavaScript, los comentarios son una forma de agregar explicaciones al código que se
ignora al ejecutar el programa.
Comentarios de una sola línea // → se pueden añadir varios, pero habría que añadir //
por cada línea de comentario.
Los comentarios de varias líneas comienzan con /* y terminan con */. Se utilizan para
agregar notas explicativas que ocupan varias líneas de código.
console.log()
se escribe dentro del paréntesis lo que queremos mostrar, ya sea variable, operador o
comparación.
console.log(nombre, version)
Otros:
Condicionales:
If → true →
Elementos:
if (condición) {
Else→ no true
Es importante que sepas que las llaves {} no siempre son obligatorios. Si el bloque de
código sólo tiene una línea, puedes omitir las llaves:
if (tieneCarnet) {
console.log('Puedes conducir')
} else {
Ejemplo mejor
const edad = 17
console.log('Puedes conducir')
} else {
while (condition) {
const NUMERO_REVISIONES = 3
let cuentaAtras = 10
console.log(cuentaAtras)
// y la inicializamos a cero
let revisionesRealizadas = 0
revisionesRealizadas = revisionesRealizadas + 1
cuentaAtras = cuentaAtras - 1
}
Se puede usar let con los bucles.
Confirm → permite establecer una respuesta entre dos opciones → true o false.
Ejemplo.
let respuesta
do {
} while (respuesta)
// código a ejecutar
Ejemplo:
El siguiente ejemplo muestra cómo se puede usar for para imprimir los números del 1 al
10:
for (let number = 1; number <= 10; number++) {
console.log(number)
+y-
++ → aumenta en uno
Es una forma abreviada de escribir i = i + 1. Y, como ves, es la forma más típica de usar
en bucles como for para no tener que escribir i = i + 1 cada vez.
-- disminuye en 1
switch (expresión) {
case valor1:
case valor2:
break
default:
break
Ejemplo:
switch (dia) {
case "lunes":
break
default:
break
}
En JavaScript podemos recuperar la información de la hora y la fecha usando el objeto
Date. Este objeto tiene un método llamado getDay() que nos devuelve el día de la
semana en formato numérico, siendo 0 el domingo y 6 el sábado.
Ejemplo:
switch (dia) {
case 0:
break
case 1:
break
case 2:
break
case 3:
console.log("¡Hoy es miércoles! 🤓")
break
default:
break
switch (dia) {
case 0:
case 6:
break
case 1:
case 2:
case 3:
case 4:
break
case 5:
break
El patrón switch(true)
Existe un patrón que se usa a veces con switch que es switch(true). Esto es, en lugar de
evaluar una expresión, evalúa una condición ignorando por completo el valor de la
expresión.
Para declarar un array usamos los corchetes [] y dentro los elementos de la colección
separados por comas ,. Se pueden datos diferentes o arrays dentro de otros.
Para modificar los valores del array, se accede a la posición y se cambia el valor.
Si hay una variable constante se puede modificar los elementos internos de array, es
decir, el resultado de la posición,, pero sin modificar la constante.
Propiedades arrays:
Otra forma de concatenar arrays es usando el operador ... (spread operator). Este
operador propaga los elementos de un array. Así que podríamos hacer lo siguiente:
// 1, 2, 3 4, 5
console.log(allNumbers) // [1, 2, 3, 4, 5]
ejercicio:
Añadimos al principio del array la cadena de texto "bebida", ya que es una promoción
que tenemos.
Después añadimos al final del array el nombre del usuario que sacamos antes.
Con índice:
For → ejecutar un código de array x veces, muestra todos los elementos o como while.
Para sacar los elementos, sin tener que poner le índice → For… of →
Buscar en arrays
Si al menos uno de los elementos retorna true, entonces el método some retorna true. Si
ninguno de los elementos retorna true, entonces el método some retorna false.
El método every te permite verificar si todos los elementos de un Array cumplen con
una condición. Es similar a some, pero en lugar de verificar si al menos uno de los
elementos cumple con la condición, los verifica todos.
Para utilizarlo, le pasas una función como argumento. Esta función recibe como
argumento el elemento del array que está iterando en ese momento y debe retornar un
valor booleano para saber si el elemento cumple con la condición.
El método find te permite encontrar el primer elemento que cumple con una condición.
Lo interesante es que este método te devuelve el elemento en sí, no un valor booleano
como some y every. Aunque el funcionamiento es igual: hay que pasarle una función
como argumento que retorne un valor booleano.
findIndex: Devuelve el índice del primer elemento que cumple con la condición
Ordenar arrays
1. Para personalizar cómo sort() ordena los elementos, puedes pasar una función de
comparación como argumento. La función de comparación debe devolver:
.sort() modifica el array original. Si quieres obtener un array ordenado sin modificar el
original, puedes usar el método .toSorted(). Sólo ten en cuenta que, ahora mismo, su
soporte en navegadores es limitado .
2. Operador de propagación (...) para crear una copia del array original y ordenarla:
Transformar arrays
Filter:
El método filter crea un nuevo array con todos los elementos que devuelven true al
ejecutar una función que le pasamos como parámetro.
Map:
El método map crea un nuevo array de la misma longitud que el original, pero con los
elementos transformados por una función que le pasamos como parámetro. Así que la
función recibirá cada elemento del array y tendremos que devolver el elemento
transformado.
reduce: Un solo valor a partir de un array. El método reduce es un poco más complejo
que los anteriores. Este método te permite crear un único valor a partir de un Array.
Matrices:
Para acceder a los elementos de una matriz, necesitaremos utilizar dos índices: uno para
la fila y otro para la columna.
El 0 siempre es el primero.
Iteración sobre Matrices → anidaciones de bucles. Puedes usar otros bucles para iterar
sobre una matriz, como un bucle while o un bucle for...of. También puedes utilizar el
método forEach() de los arrays para iterar sobre una matriz, pero tendrás que anidar dos
llamadas a forEach() para iterar sobre todos los elementos de la matriz.
Algoritmos:
Para encontrar un array determinado, hay que recorrer todos los elementos del array.
En programación se usa la notación O(n) para indicar que el número de operaciones que
se realizan es igual al número de elementos del array. En este caso, n es el número de
elementos del array.
Existe un algoritmo muy popular llamado búsqueda binaria que nos permite encontrar
un elemento en un array ordenado en O(log n). Es decir, el número de operaciones que
se realizan es igual al logaritmo del número de elementos del array
Objetos
Para declarar un objeto usamos las llaves {} y dentro las propiedades y métodos
separados por comas ,. Cada propiedad o método se define con una clave y un valor
separados por dos puntos :.
Ejemplo:
const persona = {
name: 'Dani',
age: 30,
isWorking: true
Los objetos s e pueden anidar, para ello hay que añadir el método o propiedad y abrir
llave dentro de la llave final, abriendo y cerrando con su propia llave.
Y, claro, como hemos comentado antes, también podemos tener funciones. Cuando una
función es parte de un objeto se le llama método.
Ejemplo:
console.log('Estoy caminando')
Propiedades y metodos
console.log(persona.name) // Dani
Puedes usar variables para acceder a las propiedades y métodos de un objeto. Para ello,
tienes que usar la notificación por corchetes [posición del valor especifico]. También se
usa cuando hay espacios en las propiedades, ya que hay que poner comillas y si se usa el
punto, las propiedades van sin comillas y da error.
Ejemplo:
Ejemplo 2:
persona[name] → Dani
Ejemplo:
persona.age = 30
Se puede solo mencionar la propiedad si el valor se llama igual. Todas las propiedades
de pueden tener en una misma linea.
Lo importante es que tengamos en cuenta que la variable que se creará tendrá el mismo
nombre que la propiedad que estamos recuperando.
console.log(universe) // 42
Además, puedes recuperar tantas propiedades como quieras, separándolas por comas.
console.log(universe) // 42
console.log(name) // 'Spidey'
console.log(universeNumber) // 42
La variable de una propiedad nueva va, atener el valor que le hayamos dado.
y así tenemos la nueva variable independiente «name», que la hemos sacado de partner.
El for of de los arrays permite recrear en bucle los elementos de un objeto → lo que lo
forma.
Métodos:
Se usan para evitar que una propiedad de un objeto que no existe rompa la aplicación.
El error fatal de intentar leer una propiedad de undefined → Evitando el error con if,
para comprobar si esta propiedad existe o no con anterioridad.
console.log(gamesystem.specifications.ram)
} else {
¡Cuidado con esto! Al usar el operador typeof con un valor null nos dice que es object.
Esto es un error histórico del lenguaje. Así que si la propiedad specifications es null, el
if se ejecutará y obtendremos un error al intentar acceder a ram. Para evitar esto,
podemos añadir una comprobación extra: gamesystem.specifications !== null.
if (
console.log(gamesystem.specifications.ram)
} else {
Ejemplo:
const gamesystem = {
name: 'PS5',
price: 550,
specs: {
console.log(gamesystem.specifications?.cpu)
// -> undefined
console.log(gamesystem.specs?.cpu)