- 1

Fundamentos de JavaScript para Principiantes
02:49 - 2

Instalación y Configuración de JavaScript en Visual Studio Code
04:10 - 3

Instalación y configuración de Visual Studio Code y Node.js en Windows
05:11 - 4

Variables y Buenas Prácticas en JavaScript
09:23 - 5

Tipos de Datos en JavaScript: Primitivos y Complejos
07:59 - 6

Manipulación de Strings en JavaScript: Escritura, Concatenación y Substrings
07:08 - 7

Números y Operaciones Matemáticas en JavaScript
09:30 - 8

Conversión de Tipos en JavaScript: Implícita y Explícita
04:33 - 9

Conversión de Tipos en JavaScript: Explícita e Implícita
12:20
Validación de Usuarios en una Red Social: Algoritmo Básico
Clase 43 de 55 • Curso de Fundamentos de JavaScript
Contenido del curso
- 10

Operadores de Comparación en JavaScript: Igualdad y Desigualdad
06:12 - 11

Operadores Lógicos en Programación: AND, OR y NOT
04:33 - 12

Estructuras Condicionales: Uso de IF, ELSE y ELSE IF en JavaScript
07:45 - 13

Juego de Adivinanza: Programación con Estructuras Condicionales
09:36 - 14

Estructura y uso del condicional Switch en programación
12:10 - 15

Ciclo For: Iteración de Listas y Uso de Console.log en JavaScript
07:31 - 16

Iteración con for-of en JavaScript para arrays y strings
04:26 - 17

Iteración sobre Objetos con forIn en JavaScript
07:38 - 18

Uso del ciclo while para iteración en programación
03:56 - 19

Ciclos doWhile: Estructura y Diferencias con While
03:13
- 20

Funciones en JavaScript: Cómo Calcular Precios con Descuentos
11:39 - 21

Diferencias entre Funciones y Métodos en JavaScript
10:01 - 22

Funciones Puras e Impuras en Programación: Conceptos y Ejemplos
11:22 - 23

Arrow Functions y Enlace Léxico en JavaScript
10:31 - 24

Scope y Contextos de Ejecución en JavaScript
12:21 - 25

Closures y Ámbito Léxico en JavaScript
08:00 - 26

Fundamentos del Desarrollo Web: Frontend y Backend
02:11
- 27

Arrays: Propiedades, Acceso y Creación en Programación
09:09 - 28

Mutabilidad e inmutabilidad en arrays: conceptos y ejemplos prácticos
07:56 - 29

Métodos push y pop para modificar arrays en JavaScript
04:33 - 30

Métodos map y forEach en JavaScript: Uso y Ejemplos Prácticos
12:53 - 31

Métodos Filter y Reduce en JavaScript: Uso y Ejemplos Prácticos
11:34 - 32

Métodos find y findIndex en JavaScript: Uso y ejemplos prácticos
03:52 - 33

Uso del método slice para extraer porciones de un array en JavaScript
05:28 - 34

Uso del Spread Operator en JavaScript: Copia, Combinación y Más
07:11
- 35

Programación Orientada a Objetos en JavaScript: Conceptos y Práctica
06:48 - 36

Creación y Manipulación de Objetos en JavaScript
09:05 - 37

Función constructora y gestión de instancias en JavaScript
11:36 - 38

Clases en JavaScript: Creación y Uso de Objetos con Sintaxis Moderna
06:17 - 39

Programación Orientada a Objetos en JavaScript: Clases y Prototipos
02:16 - 40

Prototipos y Herencia en JavaScript: Construcción y Uso Práctico
15:38 - 41

Métodos y herencia prototípica en JavaScript
10:43 - 42

Uso de "this" en Clases y Funciones Constructoras
05:36 - 43

Validación de Usuarios en una Red Social: Algoritmo Básico
12:26 - 44

Implementación de la Función Sign-In y Validación de Usuario
09:00
- 45

Programación Síncrona y Asíncrona en JavaScript
04:37 - 46

Promesas en JavaScript: Asincronía y Manejo de Estados
11:36 - 47

Uso de Async/Await para Promesas Asíncronas en JavaScript
09:51 - 48

Peticiones asíncronas con for await en JavaScript
06:19 - 49

Fundamentos de HTTP: Cliente-Servidor y Métodos de Petición
03:12 - 50

Peticiones HTTP en Frontend: Uso de Fetch y Análisis en Network
07:02 - 51

Peticiones HTTP en JavaScript: Fetch, GET, POST y DELETE
14:26 - 52

Envío de Datos al Servidor con JavaScript y Fetch API
10:40 - 53

Eliminar Posts con JavaScript y Delegación de Eventos
10:15 - 54

Manejo de IDs en JavaScript para eliminar artículos del DOM
02:23 - 55

Actualizaciones y Nuevas Funciones en JavaScript
01:48
¿Cómo construimos una red social sencilla?
Construir una red social desde cero puede parecer una tarea complicada, pero con la guía correcta, puedes lograr grandes avances. Hoy, nos centraremos en un reto propuesto: crear un algoritmo que permita desarrollar una red social básica. Aquí exploraremos los pasos necesarios para lograr este objetivo, desde la autenticación de usuario hasta la validación de contraseñas y el manejo de datos para presentar un "timeline".
¿Cómo autenticar a un usuario mediante usuario y contraseña?
Primero, debemos permitir que el usuario ingrese sus credenciales. Lo haremos capturando el nombre de usuario y la contraseña a través de la consola utilizando prompt. Luego, guardaremos estos valores en variables que posteriormente usaremos para comprobar la autenticidad del usuario en nuestra base de datos.
const username = prompt("¿Cuál es tu usuario?");
const password = prompt("¿Cuál es tu contraseña?");
¿Cómo validar las credenciales del usuario ingresado con la base de datos?
Seguidamente, el sistema debe verificar si el usuario y contraseña ingresados existen en una base de datos. Para ello, simulamos nuestra base de datos como un array de objetos. Crear una función que recorra este array y compare las credenciales ingresadas por el usuario.
function usuarioExistente(username, password) {
for (let i = 0; i < userDatabase.length; i++) {
if (userDatabase[i].username === username && userDatabase[i].password === password) {
console.log("Es correcto");
break;
}
}
console.log("No es correcto");
}
La función usuarioExistente utiliza un bucle que itera sobre cada objeto de nuestro userDatabase, y verifica si la información se corresponde con el input del usuario.
¿Qué hacer tras la validación de credenciales?
Si el usuario y la contraseña coinciden con los registros de la base de datos, el sistema debe mostrar un mensaje de bienvenida y el "timeline" del usuario, similar al concepto de redes sociales como Twitter o Facebook. Si no coinciden, se muestra un mensaje de error y se gestiona el acceso denegado.
usuarioExistente(username, password);
Por lo tanto, el acceso seguro a los datos es crítico y es importante tener en cuenta que este ejemplo es una simplificación, ideal para entender los conceptos básicos de autenticación. Pero en un desarrollo en producción, sería necesario implementar protocolos de seguridad más avanzados.
Recomendaciones para continuar aprendiendo
A medida que avances en la construcción de tu propia red social, considera aprender más sobre:
- Cifrado de contraseñas: proteger los datos sensibles del usuario.
- Manipulación de DOM: para mejorar la interfaz de usuario.
- Programación orientada a objetos: estructura de código escalable y eficiente.
- Bases de datos NoSQL vs SQL: distinguir entre diferentes tipos de bases de datos para adaptarse a las necesidades de almacenamiento.
Este reto es solo el comienzo. La práctica y la curiosidad te ayudarán a continuar desarrollando tus habilidades de programación. ¡Ánimo! Cada línea de código que escribes es un paso hacia el dominio del arte de la programación.