-
Notifications
You must be signed in to change notification settings - Fork 20
Expand file tree
/
Copy pathchallenge.js
More file actions
44 lines (39 loc) · 1.7 KB
/
challenge.js
File metadata and controls
44 lines (39 loc) · 1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// ============================================
// Reto: Anatomía de funciones en JavaScript
// ============================================
// Practica funciones declaradas, parámetros y argumentos,
// arrow functions y parámetros por defecto.
// Ejecuta los tests con: npx vitest src/13-anatomia-funciones
// ============================================
// --- Reto 1: Función que retorna un saludo ---
// Recibe "nombre" (string). Retorna un string con template literal: "Hola, {nombre}".
// Ejemplo: saludar('Óscar') → "Hola, Óscar"
function saludar(nombre) {
// Tu código aquí
}
// --- Reto 2: Función que crea un objeto usuario (parámetros y retorno) ---
// Recibe "nombre" (string) y "edad" (número). Retorna un objeto { nombre, edad }.
// Los parámetros son las variables; los argumentos son los valores al invocar.
// Ejemplo: crearUsuario('Ana', 25) → { nombre: 'Ana', edad: 25 }
function crearUsuario(nombre, edad) {
// Tu código aquí
}
// --- Reto 3: Arrow function con retorno implícito ---
// Recibe "a" y "b" (números). Retorna a * b (equivalente a una arrow de una línea: (a, b) => a * b).
// Ejemplo: multiplicar(4, 5) → 20
function multiplicar(a, b) {
// Tu código aquí
}
// --- Reto 4: Arrow function con parámetro por defecto y Date.now() ---
// Recibe "contenido" (string) y "titulo" (string, opcional, por defecto 'sin título').
// Retorna un objeto { titulo, contenido, creado } donde creado = Date.now() (número en ms).
// Ejemplo: crearNota('Mi contenido') → { titulo: 'sin título', contenido: 'Mi contenido', creado: 1234567890123 }
function crearNota(contenido, titulo) {
// Tu código aquí
}
module.exports = {
saludar,
crearUsuario,
multiplicar,
crearNota,
};