0% encontró este documento útil (0 votos)
10 vistas10 páginas

Dath Math Js

El documento explica el uso de temporizadores en JavaScript, incluyendo setTimeout y setInterval, así como ejemplos prácticos de conteo regresivo. También aborda operaciones matemáticas básicas con el objeto Math, la generación de números aleatorios y el manejo de fechas con el objeto Date. Finalmente, se detalla el manejo de errores mediante try...catch, incluyendo ejemplos de propagación de errores y funciones seguras.

Cargado por

adolfogc445
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
10 vistas10 páginas

Dath Math Js

El documento explica el uso de temporizadores en JavaScript, incluyendo setTimeout y setInterval, así como ejemplos prácticos de conteo regresivo. También aborda operaciones matemáticas básicas con el objeto Math, la generación de números aleatorios y el manejo de fechas con el objeto Date. Finalmente, se detalla el manejo de errores mediante try...catch, incluyendo ejemplos de propagación de errores y funciones seguras.

Cargado por

adolfogc445
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

🕐

Date, Math, Temporizador y


Manejos de Errores
Temporizador
🔹 Fórmula general
setTimeout

setTimeout(funcion, tiempoEnMilisegundos);

funcion → función que se ejecutará una sola vez después del tiempo.

tiempoEnMilisegundos → tiempo que espera antes de ejecutar la función.

Ejemplo:

setTimeout(() => {
[Link]("Esta función se ejecuta después de 3 segundo
s");
}, 3000);

setInterval

setInterval(funcion, tiempoEnMilisegundos);

funcion → función que se ejecutará repetidamente cada intervalo de


tiempo.
tiempoEnMilisegundos → intervalo de repetición.

Ejemplo:

Date, Math, Temporizador y Manejos de Errores 1


let intervalo = setInterval(() => {
[Link]("Esta función se ejecuta cada segundo");
}, 1000);

Para detenerlo se usa clearInterval(intervalo);

🔹 Ejemplo práctico: Conteo regresivo


let numero = 5;

let intervalo = setInterval(() => {


[Link](`Lanzamiento en ${numero}`);
numero--;
if (numero === 0) {
clearInterval(intervalo);
[Link]("¡Despegue!");
}
}, 1000);

Salida esperada:

Lanzamiento en 5
Lanzamiento en 4
Lanzamiento en 3
Lanzamiento en 2
Lanzamiento en 1
¡Despegue!

✅ Notas importantes:
1. Las funciones no se ejecutan directamente, se pasan como referencia (sin
paréntesis).
2. setTimeout → una vez.

3. setInterval → repetidamente hasta usar clearInterval .

Math
Date, Math, Temporizador y Manejos de Errores 2
Operaciones matemáticas básicas:

// Ejemplo de operaciones matemáticas básicas


let num1 = 10;
let num2 = 5;

[Link]("Potencia:", [Link](num1, num2)); // Potencia


[Link]("Raíz cuadrada de 25:", [Link](25)); // Raíz
cuadrada
[Link]("Valor absoluto de -10:", [Link](-10)); // Va
lor absoluto
[Link]("Redondeo de 3.7:", [Link](3.7)); // Redond
eo

floor vs round
round: Redondea un número al entero más cercano.
floor: Redondea un número hacia abajo al entero más cercano (siempre
hacia el número más pequeño).

[Link]([Link](4.9)); // Salida: 4
[Link]([Link](7.2)); // Salida: 7
[Link]([Link](-3.8)); // Salida: -4

[Link]([Link](4.9)); // Salida: 5
[Link]([Link](7.2)); // Salida: 7
[Link]([Link](-3.8)); // Salida: -4

Generación de números aleatorios:


// Ejemplo de generación de números aleatorios
let randomNumber = [Link](); // Genera un número aleat
orio entre 0 y 1 (exclusivo)
[Link]("Número aleatorio entre 0 y 1:", randomNumber);

// Genera un número aleatorio entre 1 y 10

Date, Math, Temporizador y Manejos de Errores 3


let randomInt = [Link]([Link]() * 10) + 1;
[Link]("Número aleatorio entre 1 y 10:", randomInt);

// Genera un número aleatorio entre un rango específico


function getRandomNumber(min, max) {
return [Link]([Link]() * (max - min + 1)) + min;
}

[Link]("Número aleatorio entre 5 y 15:", getRandomNumb


er(5, 15));

Aleatorio para candena:


const generateRandomString = (length) => {
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghi
jklmnopqrstuvwxyz0123456789';
let result = '';

for (let i = 0; i < length; i++) {


const randomIndex = [Link]([Link]() * char
[Link]);
result += [Link](randomIndex);
}

return result;
};

// Genera una cadena aleatoria de longitud 10


[Link](generateRandomString(10)); // Ejemplo de salid
a: "h2R7kPq8Xd"

1. Usando el operador de acceso a elementos [] :

let str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv


wxyz0123456789";
let randomIndex = [Link]([Link]() * [Link]);

Date, Math, Temporizador y Manejos de Errores 4


let randomChar = str[randomIndex]; //Acceso directo al cará
cter en la posición aleatoria

2. Usando el método charAt(index) :

let str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv


wxyz0123456789";
let randomIndex = [Link]([Link]() * [Link]);
let randomChar = [Link](randomIndex); //Obtener el cará
cter en la posición aleatoria

Date

📅 Date en JavaScript
🔹 Crear un objeto Date

let ahora = new Date(); // Fecha y hora actuales


[Link](ahora);

También puedes crear con parámetros:

let fecha1 = new Date("2025-08-17");


let fecha2 = new Date(2025, 7, 17); // Año, Mes (0-11), Día
let fecha3 = new Date(2025, 7, 17, 15, 30, 0); // Año, mes,
día, hora, minuto, segundo

⚠️ Ojo → los meses empiezan en 0 (enero) hasta 11 (diciembre).


🔹 Métodos importantes
let hoy = new Date();

Date, Math, Temporizador y Manejos de Errores 5


[Link]("Año:", [Link]());
[Link]("Mes:", [Link]() + 1); // +1 porque enero
es 0
[Link]("Día:", [Link]());
[Link]("Hora:", [Link]());
[Link]("Minutos:", [Link]());
[Link]("Segundos:", [Link]());
[Link]("Día de la semana:", [Link]()); // 0=Doming
o, 6=Sábado

🔹 Operaciones con fechas


1. Sumar/restar días

let fecha = new Date();


[Link]([Link]() + 7); // +7 días
[Link]("Dentro de una semana:", fecha);

1. Comparar fechas

let f1 = new Date("2025-01-01");


let f2 = new Date("2025-12-31");

[Link](f1 < f2); // true

🔹 Timestamps
El timestamp es la cantidad de milisegundos desde el 1 de enero de 1970
(UTC).

let ahora = new Date();


[Link]([Link]()); // milisegundos desde 1970

Date, Math, Temporizador y Manejos de Errores 6


[Link]([Link]()); // igual que getTime()

🔹 Ejemplo práctico: Temporizador con Date


let inicio = new Date();

setTimeout(() => {
let fin = new Date();
let diferencia = (fin - inicio) / 1000; // en segundos
[Link](`Pasaron ${diferencia} segundos`);
}, 3000);

🔹 Manejo de Errores con try...catch

1️⃣ Conceptos clave


throw : Lanza un error en cualquier punto del código.
Cuando se ejecuta, detiene el flujo normal de esa función.
Todo lo que esté después del throw dentro de la misma función no se
ejecuta.
Flujo normal: Es la secuencia de ejecución habitual de las líneas de código.
: Permite “atrapar” errores lanzados con
try…catch throw y manejar la
situación sin que el programa se detenga.
Propagación de errores (subida por la pila de llamadas):
Si una función lanza un throw y no tiene catch , el error sube a la
función que la llamó.
Sigue subiendo hasta que encuentra un catch .
Si nadie lo atrapa, el programa termina con un error.

2️⃣ Fórmula generalizada

Date, Math, Temporizador y Manejos de Errores 7


try {
// Código normal
if (condicionQueFalla) {
throw new Error("Mensaje de error ❌");
}

// Si no falla, sigue el flujo normal


[Link]("Todo bien "); ✅
} catch (error) {
[Link]("Error atrapado:", [Link]);

} finally {
[Link]("Esto siempre se ejecuta 🔄");
}

throw puede colocarse en cualquier línea del bloque try o incluso fuera de
funciones.
catch(error) solo se ejecuta si hubo un throw .
finally se ejecuta siempre, incluso si no hay error.

3️⃣ Ejemplo básico: forzar un error


try {
[Link]("Intentando algo...");
throw new Error("¡Algo salió mal! 💥");
} catch (error) {
[Link]("Capturamos el error:", [Link]);
} finally {
[Link]("Esto se ejecuta siempre "); 🔄
}

Salida:

Intentando algo...
Capturamos el error: ¡Algo salió mal! 💥
Date, Math, Temporizador y Manejos de Errores 8
Esto se ejecuta siempre 🔄

4️⃣ Ejemplo con funciones y propagación de errores


function c() {
throw new Error("Error en c()");
}

function b() {
c(); // el error sube aquí
}

function a() {
b(); // el error sigue subiendo
}

try {
a(); // atrapa cualquier error de b() o c()
} catch (error) {
[Link]("Error atrapado:", [Link]);
}

[Link]("El programa sigue corriendo ✅");


Salida:

Error atrapado: Error en c()


El programa sigue corriendo ✅
Explicación simple:
1. c() lanza un error.
2. No hay catch en c() , así que el error sube a b() .
3. b() tampoco tiene catch , el error sigue subiendo a a() .
4. a() está dentro de try…catch , por eso aquí se atrapa el error.

Date, Math, Temporizador y Manejos de Errores 9


5. Si no hubiera ningún catch en la pila, el programa se rompe.

5️⃣ Ejemplo de función segura con try…catch

function dividir(a, b) {
try {
if (b === 0) throw new Error("No se puede dividir entre
cero ❌");
return a / b;
} catch (error) {
[Link]("Error:", [Link]);
return null;
}
}

[Link](dividir(10, 2)); // 5
[Link](dividir(10, 0)); // Error: No se puede dividir
entre cero ❌
Permite manejar errores sin romper el programa.
Si hay error, devuelve un valor seguro ( null ) y sigue la ejecución.

✅ Resumen rápido
throw → lanza un error y detiene el flujo de la función actual.

Si no hay catch , el error sube por la pila de llamadas.


try…catch → permite atrapar errores y continuar la ejecución.

finally → se ejecuta siempre, aunque haya error.

Puedes usar throw dentro de funciones o fuera, la propagación funciona


igual.

🐇 Problemas

Date, Math, Temporizador y Manejos de Errores 10

También podría gustarte