pull/647/merge
Marlon Aurelio García Morales 9 months ago committed by GitHub
commit f409ee4280
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -0,0 +1,6 @@
console.log('firstName ---> ', firstName, ' --->', typeof(firstName) );
console.log('lastName ---> ', lastName, ' --->', typeof(lastName));
console.log('active ---> ', active, ' --->', typeof(active));
console.log('age ---> ', age, ' --->', typeof(age));

@ -0,0 +1 @@
console.log('Hola world.........');

@ -0,0 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Day 01</title>
</head>
<body>
<h1>Day 01 - JavaScript</h1>
<button onclick="alert('Bienvenido a 30DaysOfJavaScript!')">Hazme Click</button>
<!-- <script src="./introduccion.js"></script> -->
<!-- <script src="./holamundo.js"></script> -->
<script src="./variable.js"></script>
<script src="./datatypes.js"></script>
</body>
</html>

@ -0,0 +1 @@
console.log('Hola marlon');

@ -0,0 +1,25 @@
// TASK 01: Escribe un comentario de una sola línea que diga "los comentarios pueden hacer que el código sea legible"
// los comentarios pueden hacer que el código sea legible
// TASK 02: Escribe otro comentario que diga, "Bienvenido a 30DaysOfJavaScript"
// Bienvenido a 30DaysOfJavaScript
// TASK 03: Escribe un comentario multilínea que diga, "Los comentarios pueden hacer el código legible, fácil de usar e informativo"
/*
Los comentarios pueden hacer el código legible,
fácil de usar e informativo
*/
// TASK 04: Crea un archivo variable.js y declarar variables y asignar tipos de datos string, booleanos, indefinidos y nulos
// TASK 05: Crea el archivo datatypes.js y utilizar el operador "typeof" de JavaScript para comprobar los diferentes tipos de datos. Comprueba el tipo de datos de cada variable
// Declara cuatro variables sin asignar valores
// Declara cuatro variables con valores asignados
// Declara variables para almacenar su nombre, apellido, estado civil, país y edad en múltiples líneas
// Declara variables para almacenar su nombre, apellido, estado civil, país y edad en una sola línea
// Declara dos variables miEdad y tuEdad y asígneles valores iniciales y regístrese en la consola del navegador.

@ -0,0 +1,8 @@
let firstName = 'Marlon',
lastName,
active = true,
age=null;
let var1, var2, var3, var4;

@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>30 days of JS</title>
</head>
<body>
<h1>30 Days of JavaScript</h1>
<script src="./tasksLevel3.js"></script>
</body>
</html>

@ -0,0 +1,106 @@
// 1. Declare una variable llamada desafío y asígnele un valor inicial '30 días de JavaScript'.
desafio = '30 Days Of JavaScript';
//Imprima la cadena en la consola del navegador usando console.log()
console.log('desafio ---> ', desafio);
// Imprima la longitud de la cadena en la consola del navegador usando console.log()
console.log('Longitud desafio --->', desafio.length);
// Cambie todos los caracteres de cadena a letras mayúsculas usando el método toUpperCase()
console.log('toUpperCase() --->', desafio.toUpperCase());
// Cambie todos los caracteres de la cadena a letras minúsculas usando el método toLowerCase()
console.log('toLowerCase() --->', desafio.toLowerCase());
// Corta (segmenta) la primera palabra de la cadena usando el método substr() o substring()
console.log('substr() --->', desafio.substr(0, 2));
// Corta la frase Days Of JavaScript de 30 Days Of JavaScript.
let phrase = 'Days Of JavaScript';
console.log('substr() --->', desafio.substr(0, desafio.length - phrase.length ));
// Verifique si la cadena contiene una palabra Script usando el método includes()
console.log('includes() --->', desafio.includes('Script'));
// Divide la cadena en un array usando el método split()
console.log('split() --->', desafio.split());
// Divida la cadena 30 Days Of JavaScript en el espacio usando el método split()
console.log('split("") --->', desafio.split(" "));
// 'Facebook, Google, Microsoft, Apple, IBM, Oracle, Amazon' divide la cadena en la coma y cámbiala a una matriz.
let str = 'Facebook, Google, Microsoft, Apple, IBM, Oracle, Amazon';
console.log('split(", ") --->', str.split(", "));
// C30 Days Of JavaScript a 30 Days Of Python usando el método replace().
console.log('replace() --->', desafio.replace('JavaScript', 'Pyton'));
// ¿Qué es el carácter en el índice 15 en la cadena '30 Days Of JavaScript'? Utilice el método charAt().
console.log('charAt() --->', desafio.charAt(15));
// ¿Cuál es el código de carácter de J en la cadena '30 Days Of JavaScript' usando charCodeAt()
console.log('charCodeAt() --->', desafio.charCodeAt(11));
// Use indexOf para determinar la posición de la primera aparición de a en 30 Days Of JavaScript
console.log('indexOf() --->', desafio.indexOf('a'));
// Utilice lastIndexOf para determinar la posición de la última aparición de a en 30 Days Of JavaScript.
console.log('lastIndexOf() --->', desafio.lastIndexOf('a'));
// Usa indexOf para encontrar la posición de la primera aparición de la palabra porque en la siguiente oración:'No puedes terminar una oración con porque porque porque es una conjunción'
let str2 = 'No puedes terminar una oración con porque porque porque es una conjunción'
console.log('indexOf() --->', str2.indexOf('porque'));
// Usa lastIndexOf para encontrar la posición de la última aparición de la palabra porque en la siguiente oración:'No puedes terminar una oración con porque porque porque es una conjunción'
console.log('lastIndexOf() --->', str2.lastIndexOf('porque'));
// Usa buscar para encontrar la posición de la primera aparición de la palabra porque en la siguiente oración:'No puedes terminar una oración con porque porque porque es una conjunción'
console.log('search()) --->', str2.search('porque'));
// Use trim() para eliminar cualquier espacio en blanco final al principio y al final de una cadena. Por ejemplo, '30 Days Of JavaScript'.
let str3 = ' No puedes terminar una oración con porque porque porque es una conjunción'
console.log('str3 --->', str3);
console.log('trim() --->', str3.trim());
// Use el método startsWith() con la cadena 30 Days Of JavaScript y haga que el resultado sea verdadero
console.log('startsWith() --->', desafio.startsWith('30 Days'));
// Use el método endsWith() con la cadena 30 Days Of JavaScript y haga que el resultado sea verdadero
console.log('endsWith() --->', desafio.endsWith('Script'));
// Usa el método match() para encontrar todos los a en 30 Days Of JavaScript
let pattern = /a/gi
console.log('match() --->', desafio.match(pattern));
// Use concat() y fusione '30 Days Of ' y 'JavaScript' en una sola cadena, '30 Days Of JavaScript'
let strOne = '30 Days Of ';
let strTwo = 'JavaScript';
console.log('concat() --->', strOne.concat(strTwo));
// Use el método repeat() para imprimir 30 Days Of JavaScript 2 veces
console.log('repeat() --->', desafio.repeat(2));

@ -0,0 +1,77 @@
// 1. Usando console.log() imprima la siguiente declaración:
// The quote 'There is no exercise better for the heart than reaching down and lifting people up.' by John Holmes teaches us to help one another.
let str1 = "'There is no exercise better for the heart than reaching down and lifting people up.' by John Holmes teaches us to help one another";
console.log(str1);
// 2. Usando console.log() imprima la siguiente cita de la Madre Teresa:
// "Love is not patronizing and charity isn't about pity, it is about love. Charity and love are the same -- with charity you give love, so don't just give money but reach out your hand instead."
let str2 = "Love is not patronizing and charity isn't about pity, it is about love. Charity and love are the same -- with charity you give love, so don't just give money but reach out your hand instead."
console.log(str2);
// 3. Compruebe si typeof '10' es exactamente igual a 10. Si no, hágalo exactamente igual.
console.log(typeof(Number('10')) === typeof(10));
// 4. Compruebe si parseFloat('9.8') es igual a 10, si no, hágalo exactamente igual a 10.
console.log(Math.round(parseFloat('9.8')) === 10);
// 5. Verifique si 'on' se encuentra tanto en Python como en la jargon
let str5 = 'jargon';
console.log(str5.includes('on'));
// 6. Espero que este curso no esté lleno de jargon. Compruebe si jargon está en la oración.
let str6 = 'Espero que este curso no esté lleno de jargon';
console.log(str6.includes(str5));
// 7. Genere un número aleatorio entre 0 y 100 inclusive.
console.log(Math.round(Math.random() * 101));
// 8. Genere un número aleatorio entre 50 y 100 inclusive.
let min8 = 50;
let max8 = 101;
console.log(Math.floor(Math.random() * (max8 - min8) + min8));
// 9. Genere un número aleatorio entre 0 y 255 inclusive.
let min9 = 0;
let max9 = 256;
console.log(Math.floor(Math.random() * (max9 - min9) + min9));
// 10. Acceda a los caracteres de la cadena 'JavaScript' utilizando un número aleatorio.
let str10 = 'JavaScript';
let max10 = str10.length;
let index = Math.floor(Math.random() * max10);
console.log('index ---> ', index, str10[index])
// 11. Use console.log() y caracteres de escape para imprimir el siguiente patrón.
// 1 1 1 1 1
// 2 1 2 4 8
// 3 1 3 9 27
// 4 1 4 16 64
// 5 1 5 25 125
let valueR1 = 1,
valueR2 = 2,
valueR3 = 3,
valueR4 = 4,
valueR5 = 5;
console.log(`${valueR1} \t1 \t${Math.pow(valueR1, 1)} \t${Math.pow(valueR1, 2)} \t${Math.pow(valueR1, 3)}`);
console.log(`${valueR2} \t1 \t${Math.pow(valueR2, 1)} \t${Math.pow(valueR2, 2)} \t${Math.pow(valueR2, 3)}`);
console.log(`${valueR3} \t1 \t${Math.pow(valueR3, 1)} \t${Math.pow(valueR3, 2)} \t${Math.pow(valueR3, 3)}`);
console.log(`${valueR4} \t1 \t${Math.pow(valueR4, 1)} \t${Math.pow(valueR4, 2)} \t${Math.pow(valueR4, 3)}`);
console.log(`${valueR5} \t1 \t${Math.pow(valueR5, 1)} \t${Math.pow(valueR5, 2)} \t${Math.pow(valueR5, 3)}`);
// Usa substr para separar la frase porque porque porque de la siguiente oración:'No puedes terminar una oración con porque porque porque es una conjunción'
let str12 = 'No puedes terminar una oración con porque porque porque es una conjunción';
let phrase12 = 'porque porque porque';
let index12 = str12.indexOf(phrase12);
console.log(index12);
console.log(str12.substr(index12, phrase12.length));

@ -0,0 +1,28 @@
// 1. Cuente el número de palabras amor en esta oración:
// El amor es lo mejor que hay en este mundo. Algunos encontraron su amor y algunos todavía están buscando su amor.
let str1 = 'El amor es lo mejor que hay en este mundo. Algunos encontraron su amor y algunos todavía están buscando su amor'
let pattern1 = /amor/gi;
console.log(str1.match(pattern1).length);
// 2. Usa match() para contar el número de todos los porque en la siguiente oración:
// No puedes terminar una oración con porque porque porque es una conjunción
let str2 = 'No puedes terminar una oración con porque porque porque es una conjunción';
let pattern2 = /porque/gi;
console.log(str2.match(pattern2).length);
// 3. Limpia el siguiente texto y encuentra la palabra más frecuente (pista, usa replace y expresiones regulares).
const sentence =
"%I $am@% a %tea@cher%, &and& I lo%#ve %te@a@ching%;. The@re $is no@th@ing; &as& mo@re rewarding as educa@ting &and& @emp%o@weri@ng peo@ple. ;I found tea@ching m%o@re interesting tha@n any ot#her %jo@bs. %Do@es thi%s mo@tiv#ate yo@u to be a tea@cher!? %Th#is 30#Days&OfJavaScript &is al@so $the $resu@lt of &love& of tea&ching";
let pattern3 = /([%$@&#;])/gi;
let newSentence = sentence.replace(pattern3, '');
console.log(newSentence);
// 4. Calcula el ingreso anual total de la persona extrayendo los números del siguiente texto.
let str4 = 'Él gana 5000 euros de salario por mes, bono anual de 10000 euros, cursos en línea de 15000 euros por mes.';
let patter4 = /\d+/g;
let data = str4.match(patter4);
let salAnual = (Number(data[0]) * 12) + (Number(data[1])) + (Number(data[2] * 12));
console.log(`El salario anual es: ${salAnual.toFixed(2)} COP`);

@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>30 days of JS</title>
</head>
<body>
<h1>30 Days of JavaScript</h1>
<script src="./tasksLevel3.js"></script>
</body>
</html>

@ -0,0 +1,125 @@
// 1. Declare las siguientes variables y asignar un valor, use el operador
// typeof para verificar diferentes tipos de datos:
let firstName = 'Marlon',
lastName = 'García',
country = 'Colombia',
city = 'Medellín',
age = 50,
isMarried = true,
year = 2023;
console.log('firstName ---> \t', typeof(firstName));
console.log('lastName ---> \t', typeof(lastName));
console.log('country ---> \t', typeof(country));
console.log('city -----> \t', typeof(city));
console.log('age ------> \t', typeof(age));
console.log('isMarried ---> \t', typeof(isMarried));
console.log('year ------> \t', typeof(year));
// 2. Verifique si typeof '10' es igual a 10
console.log(typeof('10') == 10);
console.log(typeof('10') === 10);
// 3. Verifique si parseInt('9.8') es igual a 10
console.log(parseInt('9.8') == 10);
console.log(parseInt('9.8') === 10);
// 4. Verifique cualquier valor booleano true o false.
console.log(isMarried == true);
console.log(isMarried == false);
// 5. Escriba tres declaraciones de JavaScript que proporcionen un valor verdadero.
console.log(10 > 5);
console.log('z' > 'm');
console.log(Math.pow(2,4) > Math.sqrt(16));
// 6. Escriba tres declaraciones de JavaScript que proporcionen un valor falso.
console.log(1 > 5);
console.log('marlon'.length < 'papá'.length);
console.log(Math.pow(2,4) > Math.sqrt(1000));
// 7. Calcule primero el resultado de la siguiente expresión de comparación sin usar console.log().
// Después de decidir el resultado, confirmelo usando console.log()
/*
_ 4 > 3: true
_ 4 >= 3: true
_ 4 < 3: false
_ 4 <= 3: false
_ 4 == 4: true
_ 4 === 4: true
_ 4 != 4: false
_ 4 !== 4: false
_ 4 != '4': false
_ 4 == '4': true
_ 4 === '4':false
*/
console.log('4 > 3 ---> \t\t',4 > 3);
console.log('4 >= 3 ---> \t\t',4 >= 3);
console.log('4 < 3 ---> \t\t',4 < 3);
console.log('4 <= 3 ---> \t\t',4 <= 3);
console.log('4 == 4 ---> \t\t',4 == 4);
console.log('4 === 4 ---> \t\t',4 === 4);
console.log('4 != 4 ---> \t\t',4 != 4);
console.log('4 !== 4 ---> \t\t',4 !== 4);
console.log('4 != "4" ---> \t\t',4 != '4');
console.log('4 == "4" ---> \t\t',4 == '4');
console.log('4 === "4" ---> \t\t',4 === '4');
// 8. Encuentre la longitud de Python y jargon y haga una declaración de comparación falsa.
console.log('Python'.length > 'jargon'.length);
// 9. Calcule primero el resultado de las siguientes expresiones sin usar console.log().
// Después de decidir el resultado, confirmelo usando console.log()
/*
_ 4 > 3 && 10 < 12: T && T true
_ 4 > 3 && 10 > 12: T && F false
_ 4 > 3 || 10 < 12: T || T true
_ 4 > 3 || 10 > 12: T || F true
_ !(4 > 3): !T false
_ !(4 < 3): !F true
_ !(false): !F true
_ !(4 > 3 && 10 < 12): !(T && T) !T false
_ !(4 > 3 && 10 > 12): !(T && F) !F true
_ !(4 === '4'): !F true
_ No hay 'on' tanto en dragon como en python
*/
console.log("4 > 3 && 10 < 12 ---> ", 4 > 3 && 10 < 12);
console.log("4 > 3 && 10 > 12 ---> ", 4 > 3 && 10 > 12);
console.log("4 > 3 || 10 < 12 ---> ", 4 > 3 || 10 < 12);
console.log("4 > 3 || 10 > 12 ---> ", 4 > 3 || 10 > 12);
console.log("!(4 > 3) ---> ", !(4 > 3));
console.log("!(4 < 3) ---> ", !(4 < 3));
console.log("!(false) ---> ", !(false));
console.log("!(4 > 3 && 10 < 12) ---> ", !(4 > 3 && 10 < 12));
console.log("!(4 > 3 && 10 > 12) ---> ", !(4 > 3 && 10 > 12));
console.log("!(4 === '4') ---> ", !(4 === '4'));
console.log(!(!'dragon'.includes('on') && !'python'.includes('on')));
// 10. Utilice el objeto Date para realizar las siguientes actividades
/*
_ ¿Qué año es hoy?
_ ¿Qué mes es hoy con un número?
_ ¿Qué fecha es hoy?
_ ¿Qué día es hoy con un número?
_ ¿Cuál es la hora actual?
_ ¿Cuántos minutos hay actualmente?
_ Averigüe el número de segundos transcurridos desde el 1 de enero de 1970 hasta ahora.
*/
let currentDate = new Date();
console.log('¿Qué año es hoy? ---> ', currentDate.getFullYear());
console.log('¿Qué mes es hoy con un número? ---> ', currentDate.getMonth() + 1);
let dateToday = `${currentDate.getDate()} / ${currentDate.getMonth()+1} / ${currentDate.getFullYear()}`;
console.log('¿Qué fecha es hoy? ---> ', dateToday);
console.log('¿Qué día es hoy con un número? ---> ', currentDate.getDay());
let timeCurrent = `${currentDate.getHours()}:${currentDate.getMinutes()}:${currentDate.getSeconds()}`;
console.log('¿Cuál es la hora actual? ---> ', timeCurrent);
console.log('¿Cuántos minutos hay actualmente? ---> ', currentDate.getMinutes());
console.log('Averigüe el número de segundos transcurridos desde el 1 de enero de 1970 hasta ahora. ---> ', Date.now());

@ -0,0 +1,124 @@
/*
// 1. Escriba un script que solicite al usuario que ingrese la base y la altura del triángulo y calcule el área
// de un triángulo (área = 0,5 x b x h).
let base = Number(prompt('Ingrese la base del triángulo: '));
let hight = Number(prompt('Ingrese la altura del triángulo: '));
console.log(`El área del triángulo de base ${base} y altura ${hight} es: ${0.5 * base * hight}`);
// 2. Escriba un script que solicite al usuario que ingrese el lado a, el lado b y el lado c del triángulo y calcule
// el perímetro del triángulo (perímetro = a + b + c)
let sideA = Number(prompt('Ingrese lado A del triángulo: '));
let sideB = Number(prompt('Ingrese lado B del triángulo: '));
let sideC = Number(prompt('Ingrese lado C del triángulo: '));
console.log(`El perímetro del triángulo de lados ${sideA}, ${sideB} y ${sideC} es: ${sideA + sideB + sideC}`);
// 3. Obtenga el largo y el ancho usando prompt y calcule el área del rectángulo (área = largo x ancho y el
// perímetro del rectángulo (perímetro = 2 x (largo + ancho))
let large = Number(prompt('Ingrese largo del rectángulo: '));
let width = Number(prompt('Ingrese ancho del rectángulo: '));
console.log(`El área del rectángulo de largo ${large} y ancho ${width} es: ${large * width}`);
console.log(`El perímetro del rectángulo de largo ${large} y ancho ${width} es: ${2 * (large + width)}`);
// 4. Obtenga el radio usando prompt y calcule el área de un círculo (área = pi x r x r) y la circunferencia
// de un círculo (c = 2 x pi x r) donde pi = 3.14.
let radio = Number(prompt('Ingrese el radio del círculo: '));
console.log(`El área del círculo de radio ${radio} es: ${Math.PI * radio * radio}`);
console.log(`La circunferencia del círculo de radio ${radio} es: ${2 * Math.PI * radio}`);
// 5. Calcule la pendiente, la intersección X y la intersección Y de y = 2x -2
let equation = 'y=-2x-15';
let m = equation.split('=');
console.log('Pendiente de la recta y=2x-2 es: ', m[1].substr(0, m[1].indexOf('x')));
let valueY = m[1].substr(m[1].indexOf('x') + 1, m[1].length - 1);
console.log(`Intersección con y: P(0, ${valueY})`);
let valueX = (-1 * valueY) / m[1].substr(0, m[1].indexOf('x'));
console.log(`Intersección con x: P(${valueX}, 0)`);
// 6. La pendiente es m = (y2-y1)/(x2-x1). Encuentra la pendiente entre el punto (2, 2) y el punto (6,10)
let x1 = 2,
y1 = 2,
x2 = 6,
y2 = 10;
let pending = (y2-y1)/(x2-x1);
console.log('La pendiente de la recta es: ', pending)
// 7. Compare la pendiente de las dos preguntas anteriores.
let pendingEx1 = Number(m[1].substr(0, m[1].indexOf('x')));
let pendingEx2 = Number(pending);
console.log(`La pendiente de los puntos (0, ${valueY}) y (${valueX}, 0) es ${pendingEx1} `);
console.log(`La pendiente de los puntos (2, 2) y (10, 6) es ${pendingEx2} `);
console.log('Las pendientes son iguales? ---> ', pendingEx1 === pendingEx2);
console.log('La pendiente 1 es mayor a la pendiente 2? --->', pendingEx1 > pendingEx2);
console.log('La pendiente 1 es menor a la pendiente 2? --->', pendingEx1 < pendingEx2);
// 8. Calcula el valor de y (y = x2 + 6x + 9). Trate de usar diferentes valores de x y averigüe en qué valor de x y es 0.
let x = 0;
let y = (Math.pow(x, 2)) + (6 * x) + 9;
console.log(`x = ${x} ---> y = ${y}`);
// 9. Escriba un script con prompt que solicite al usuario que ingrese las horas y la tarifa por hora.
// ¿Calcular el salario de la persona?
let hoursJobs = Number(prompt('Ingrese horas trabajadas: '));
let payHours = Number(prompt('Ingrese pago pot horas trabajadas: '));
let salary = hoursJobs * payHours;
console.log('Tiene salario de: ', salary);
// 10. Si la longitud de su nombre es mayor que 7, diga que su nombre es largo; de lo contrario, diga que su nombre es corto.
let myName = 'Marlon García';
(myName.length > 7) ? console.log(`Mi nombre es largo`) : console.log(`Mi nombre es corto`);
// 11. Compare la longitud de su nombre y la longitud de su apellido y debería obtener este resultado.
let firstName = 'Marlon',
lastName = 'García';
(firstName.length > lastName.length) ?
console.log(`Mi primer nombre, ${firstName} es más largo que mi mi apellido, ${lastName}`) :
console.log(`Mi primer nombre, ${firstName} es más corto que mi mi apellido, ${lastName}`);
// 12. Declare dos variables myAge y yourAge y asignarles los valores iniciales:
let myAge = 20,
yourAge = 40;
(myAge > yourAge) ?
console.log(`Soy ${myAge - yourAge} años mayor que tú`) :
console.log(`Soy ${yourAge - myAge} años menor que tú`);
// 13. Usando prompt, obtenga el año en que nació el usuario y, si el usuario tiene 18 años o más, permita que el usuario conduzca,
// si no dígale que espere una cierta cantidad de años.
let yearBirth = Number(prompt('Ingrese de nacimiento: '));
let currentDate = new Date();
let ageUser = currentDate.getFullYear() - yearBirth;
(ageUser >= 18) ?
console.log(`Tienes ${ageUser} años. Tiene edad suficiente para conducir`) :
console.log(`Tienes ${ageUser} años. Podrás conducir después de ${18 - ageUser} años`);
// 14. Escriba un script que solicite por prompt al usuario que ingrese el número de años. Calcular el número de segundos que puede
// vivir una persona. Supongamos que alguien vive solo cien años
let years = Number(prompt('Ingrese número de años: '));
let quantitySeg = 365 * 24 * 60 * 60 * years;
console.log(`La persona puede vivir ${quantitySeg} segundos`);
*/
// 15. Cree un formato de hora legible por humanos usando el objeto Date.
let currentDate = new Date();
let year = currentDate.getFullYear();
let month = currentDate.getMonth() + 1;
let day = currentDate.getDate();
let hour = currentDate.getHours();
let minutes = currentDate.getMinutes();
// YYYY-MM-DD HH:mm
console.log(`${year}-${month}-${day} ${hour}:${minutes}`);
// DD-MM-YYYY HH:mm
console.log(`${day}-${month}-${year} ${hour}:${minutes}`);
// DD/MM/YYYY
console.log(`${day}-${month}-${year}`);

@ -0,0 +1,13 @@
// 1. Cree un formato de hora legible por humanos usando el objeto Date.
// La hora y el minuto deben ser siempre dos dígitos (7 horas deben ser 07 y 5 minutos deben ser 05)
// YYY-MM-DD HH:mm eg. 20120-01-02 07:05
let currentDate = new Date();
let year = currentDate.getFullYear();
let month = currentDate.getMonth() + 1;
let day = currentDate.getDate();
let hour = currentDate.getHours();
let newHour = hour.toString().length > 1 ? hour.toString() : '0' + hour.toString();
let minutes = currentDate.getMinutes();
let newMinutes = minutes.toString().length > 1 ? minutes.toString() : '0' + minutes.toString();
console.log(`${year}-${month}-${day} ${newHour}:${newMinutes}`);

@ -0,0 +1,36 @@
url = 'https://jsonplaceholder.typicode.com/posts'
const ul = document.createElement('ul');
// NORMAL
fetch(url) // 1
.then(response => response.json()) // 2
.then(data => {
data.forEach(post => {
const {id, title} = post;
console.log(id, title);
const li = document.createElement('li');
li.style.color = 'red';
li.style.background = 'yellow';
li.innerHTML = `<p>${id < 10 ? '0' + id : id} - ${title}</p>`;
ul.append(li);
});
document.body.append(ul);
}); // 3
// async / await
const getData = async () => {
const response = await fetch(url);
const data = await response.json();
data.forEach(post => {
const {id, title} = post;
const li = document.createElement('li');
li.style.color = 'red';
li.style.background = 'yellow';
li.innerHTML = `<p>${id < 10 ? '0' + id : id} - ${title}</p>`;
ul.append(li);
});
document.body.append(ul);
}
getData();

@ -0,0 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>30 days of JS</title>
</head>
<body>
<h1>30 Days of JavaScript</h1>
<div id="root"></div>
<script type="module" src="./tasksLevel3.js"></script>
<!-- <script src="./fetch.js"></script> -->
</body>
</html>

@ -0,0 +1,8 @@
import React from 'react';
import ReactDOM from 'react-dom/client';
import App from './App';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<App />
);

@ -0,0 +1,48 @@
/*
// 1. Obtenga la entrada del usuario usando el aviso ("Ingrese su edad:").
// Si el usuario tiene 18 años o más, muestre el mensaje: 'Tiene la edad
// suficiente para conducir', pero si no tiene 18 años, brinde otro mensaje
// que indique que debe esperar la cantidad de años que necesita para cumplir 18.
let ageUser = Number(prompt('Ingrese su edad: '));
if (ageUser >= 18) {
console.log(`Tienes ${ageUser} años. Tiene edad suficiente para conducir`);
} else {
console.log(`Tienes ${ageUser} años. Te faltan ${18 - ageUser} años para poder conducir`);
}
// 2. Compara los valores de myAge y yourAge usando if... else. Según la comparación, registre el
// resultado en la consola indicando quién es mayor (tú o yo). Utilice prompt(“Ingrese su edad:”)
// para obtener la edad como entrada.
let myAge = Number(prompt('Mi edad: '));
let yourAge = Number(prompt('Tú edad: '));
if (myAge > yourAge) {
console.log(`Soy ${myAge - yourAge} años mayor, por lo tanto, tengo más edad que tú.`);
} else {
console.log(`Tú eres ${yourAge - myAge} años mayor, por lo tanto, tienes más edad que yo.`);
}
// 3. Si a es mayor que b, devuelve 'a es mayor que b'; de lo contrario, 'a es menor que b'. Trate de implementarlo de maneras diferentes
let a = 1,
b = 3;
// Usando if else
if (a > b) {
console.log(`${a} es mayor que ${b}`);
} else {
console.log(`${a} es menor que ${b}`);
}
// operador ternario.
(a > b) ? console.log(`${a} es mayor que ${b}`) : console.log(`${a} es menor que ${b}`);
// 4. Los números pares son divisibles por 2 y el resto es cero. ¿Cómo verificar si un
// número es par o no usando JavaScript?
let number = Number(prompt('Ingrese un número entero: '));
if (number % 2 === 0) {
console.log(`${number} es PAR`);
} else {
console.log(`${number} es IMPAR`);
}
(number % 2 === 0) ? console.log(`${number} es PAR`) : console.log(`${number} es IMPAR`);
*/

@ -0,0 +1,87 @@
/*
// 1. Escriba un código que pueda calificar a los estudiantes de acuerdo con sus puntajes:
// 80-100, A
// 70-89, B
// 60-69, C
// 50-59, D
// 0-49, F
let score = Number(prompt('Ingrese el puntaje del estudiante: '));
switch (true) {
case score >= 80:
console.log('El estudiante tiene una calificación con la letra A');
break;
case score >= 70:
console.log('El estudiante tiene una calificación con la letra B');
break;
case score >= 60:
console.log('El estudiante tiene una calificación con la letra C');
break;
case score >= 50:
console.log('El estudiante tiene una calificación con la letra D');
break;
case score >= 0:
console.log('El estudiante tiene una calificación con la letra F');
break;
default:
console.log('Puntaje no válido (0 - 100)');
}
// 2. Consulta si la temporada es Otoño, Invierno, Primavera o Verano. Si la entrada del usuario es:
// Septiembre, Octubre o Noviembre, la temporada es Otoño.
// Diciembre, Enero o Febrero, la temporada es Invierno.
// Marzo, Abril o Mayo, la temporada es Primavera
// Junio, Julio o Agosto, la temporada es Verano
let month = prompt('Ingrese el mes: ');
switch (month) {
case 'septiembre':
case 'octubre':
case 'noviembre':
console.log('Está en temporada de OTOÑO');
break;
case 'diciembre':
case 'enero':
case 'febrero':
console.log('Está en temporada de INVIERNO');
break;
case 'marzo':
case 'abril':
case 'mayo':
console.log('Está en temporada de PRIMAVERA');
break;
case 'junio':
case 'julio':
case 'agosto':
console.log('Está en temporada de VERANO');
break;
default:
console.log('Ingrese mes válido...')
}
*/
// 3. Compruebe si un día es un día de fin de semana o un día laborable. Su script tomará el día como entrada.
let day = prompt('Qué día quiere consultar: ');
switch (day) {
case 'lunes':
case 'martes':
case 'miércoles':
case 'jueves':
case 'viernes':
console.log(`El ${day.toUpperCase()} es un día laborable`)
break;
case 'sábado':
case 'domingo':
console.log(`El ${day.toUpperCase()} es un día No laborable. Es fin de semana`)
break;
default:
console.log('Ingrese un día válido...')
break;
}

@ -0,0 +1,57 @@
/*
// 1. Escribe un programa que diga el número de días en un mes.
let month = prompt('Ingrese el mes: ');
switch (month) {
case 'enero':
case 'marzo':
case 'mayo':
case 'julio':
case 'agosto':
case 'octubre':
case 'diciembre':
console.log(`${month.toUpperCase()} tiene 31 días`);
break;
case 'abril':
case 'junio':
case 'septiembre':
case 'noviembre':
console.log(`${month.toUpperCase()} tiene 31 días`);
break;
case 'febrero':
console.log(`${month.toUpperCase()} tiene 28 días`);
break;
default:
console.log('Ingrese mes válido...')
}
*/
// 2. Escribe un programa que diga el número de días en un mes. Tomar en cuenta año bisiesto
let month = prompt('Ingrese el mes: ');
switch (month) {
case 'enero':
case 'marzo':
case 'mayo':
case 'julio':
case 'agosto':
case 'octubre':
case 'diciembre':
console.log(`${month.toUpperCase()} tiene 31 días`);
break;
case 'abril':
case 'junio':
case 'septiembre':
case 'noviembre':
console.log(`${month.toUpperCase()} tiene 31 días`);
break;
case 'febrero':
console.log(`${month.toUpperCase()} tiene 29 días`);
break;
default:
console.log('Ingrese mes válido...')
}
Loading…
Cancel
Save