20 ejercicios resueltos de JavaScript para principiantes

20 ejercicios resueltos de JavaScript para principiantes: condicionales, ciclos, cadenas, arrays, funciones y más, con código y explicaciones paso a paso.


Practicar con ejercicios cortos es una de las mejores formas de afianzar JavaScript. En esta guía vas a encontrar 20 ejercicios resueltos de JavaScript para principiantes, ordenados desde operaciones básicas hasta arrays, cadenas y funciones.

Si recién empezás, podés complementar estos ejemplos con la guía completa de JavaScript. También te pueden servir las guías de condicionales, ciclos, funciones y arrays.

Índice de ejercicios

  1. Mostrar “Hola mundo”
  2. Sumar dos números
  3. Determinar si un número es par o impar
  4. Encontrar el mayor de dos números
  5. Encontrar el mayor de tres números
  6. Positivo, negativo o cero
  7. Tabla de multiplicar
  8. Sumar los números del 1 al N
  9. Calcular el factorial
  10. Contar vocales en una cadena
  11. Invertir una cadena
  12. Comprobar si una palabra es palíndromo
  13. Encontrar el mayor valor de un array
  14. Calcular el promedio de un array
  15. Contar números pares en un array
  16. Buscar un elemento en un array
  17. Eliminar elementos duplicados
  18. Ordenar números de menor a mayor
  19. Contar la frecuencia de cada elemento
  20. Crear una calculadora con funciones

1. Mostrar “Hola mundo”

Enunciado: Mostrar un mensaje en la consola.

console.log("Hola mundo");

El método console.log() muestra información en la consola del navegador. Es una de las formas más simples de comprobar qué está haciendo un programa.

2. Sumar dos números

Enunciado: Guardar dos números, sumarlos y mostrar el resultado.

const a = 8;
const b = 5;
const suma = a + b;

console.log(suma);

El operador + realiza la suma cuando ambos valores son numéricos. El resultado se guarda en una nueva constante.

3. Determinar si un número es par o impar

Enunciado: Indicar si un número es par o impar.

const numero = 17;

if (numero % 2 === 0) {
    console.log("Es par");
} else {
    console.log("Es impar");
}

El operador % devuelve el resto de una división. Si el resto de dividir por 2 es cero, el número es par.

4. Encontrar el mayor de dos números

Enunciado: Comparar dos valores y mostrar cuál es mayor.

const a = 12;
const b = 20;

if (a > b) {
    console.log(a);
} else if (b > a) {
    console.log(b);
} else {
    console.log("Son iguales");
}

Se usan if y else if para evaluar las distintas posibilidades, incluyendo el caso en que ambos valores sean iguales.

5. Encontrar el mayor de tres números

Enunciado: Obtener el valor más alto entre tres números.

const a = 18;
const b = 42;
const c = 27;

const mayor = Math.max(a, b, c);

console.log(mayor);

Math.max() recibe uno o más números y devuelve el mayor. No modifica los valores originales.

6. Positivo, negativo o cero

Enunciado: Determinar el signo de un número.

const numero = -7;

if (numero > 0) {
    console.log("Positivo");
} else if (numero < 0) {
    console.log("Negativo");
} else {
    console.log("Es cero");
}

El orden de las condiciones permite separar claramente los tres casos posibles.

7. Tabla de multiplicar

Enunciado: Mostrar la tabla de multiplicar de un número del 1 al 10.

const numero = 7;

for (let i = 1; i <= 10; i++) {
    console.log(numero + " x " + i + " = " + numero * i);
}

El ciclo for repite el bloque diez veces. La variable i funciona como contador.

8. Sumar los números del 1 al N

Enunciado: Calcular la suma de todos los enteros desde 1 hasta un valor dado.

const n = 10;
let suma = 0;

for (let i = 1; i <= n; i++) {
    suma += i;
}

console.log(suma);

suma funciona como acumulador: en cada vuelta del ciclo recibe su valor anterior más el número actual.

9. Calcular el factorial

Enunciado: Calcular el factorial de un número positivo.

const numero = 5;
let factorial = 1;

for (let i = 1; i <= numero; i++) {
    factorial *= i;
}

console.log(factorial);

El factorial de 5 es 1 × 2 × 3 × 4 × 5. Por eso el acumulador comienza en 1 y se multiplica en cada iteración.

10. Contar vocales en una cadena

Enunciado: Contar cuántas vocales aparecen en un texto.

const texto = "JavaScript";
let cantidad = 0;

for (const letra of texto.toLowerCase()) {
    if ("aeiou".includes(letra)) {
        cantidad++;
    }
}

console.log(cantidad);

toLowerCase() devuelve una nueva cadena en minúsculas. includes() devuelve true si encuentra el carácter buscado.

11. Invertir una cadena

Enunciado: Mostrar un texto con sus caracteres en orden inverso.

const texto = "programar";

const invertido = texto
    .split("")
    .reverse()
    .join("");

console.log(invertido);

split("") convierte la cadena en un array de caracteres, reverse() invierte ese array y join("") vuelve a unirlo. reverse() modifica el array sobre el que trabaja.

12. Comprobar si una palabra es palíndromo

Enunciado: Determinar si una palabra se lee igual de izquierda a derecha que de derecha a izquierda.

const palabra = "reconocer";
const normalizada = palabra.toLowerCase();

const invertida = normalizada
    .split("")
    .reverse()
    .join("");

if (normalizada === invertida) {
    console.log("Es palíndromo");
} else {
    console.log("No es palíndromo");
}

Primero se normaliza el texto y después se compara con su versión invertida. Este ejemplo trabaja con una sola palabra y no elimina espacios ni signos.

13. Encontrar el mayor valor de un array

Enunciado: Obtener el número más alto de un array.

const numeros = [4, 18, 7, 31, 12];
let mayor = numeros[0];

for (const numero of numeros) {
    if (numero > mayor) {
        mayor = numero;
    }
}

console.log(mayor);

Se inicializa mayor con un valor real del array y luego se compara cada elemento. Esto funciona correctamente incluso si todos los números son negativos.

14. Calcular el promedio de un array

Enunciado: Obtener el promedio de varios números.

const numeros = [8, 6, 10, 9, 7];
let suma = 0;

for (const numero of numeros) {
    suma += numero;
}

const promedio = suma / numeros.length;

console.log(promedio);

La propiedad length indica cuántos elementos contiene el array. El promedio se obtiene dividiendo la suma total por esa cantidad.

15. Contar números pares en un array

Enunciado: Contar cuántos elementos pares contiene un array.

const numeros = [3, 8, 12, 5, 7, 20];
let cantidad = 0;

for (const numero of numeros) {
    if (numero % 2 === 0) {
        cantidad++;
    }
}

console.log(cantidad);

El procedimiento combina un recorrido con for...of, una condición y un contador.

16. Buscar un elemento en un array

Enunciado: Comprobar si un valor existe dentro de un array.

const lenguajes = ["JavaScript", "Python", "PHP"];
const buscado = "Python";

if (lenguajes.includes(buscado)) {
    console.log("Encontrado");
} else {
    console.log("No encontrado");
}

includes() devuelve un booleano: true si el array contiene el valor y false en caso contrario.

17. Eliminar elementos duplicados

Enunciado: Crear un nuevo array sin valores repetidos.

const numeros = [1, 2, 2, 3, 4, 4, 5];

const sinDuplicados = [...new Set(numeros)];

console.log(sinDuplicados);

Set almacena valores únicos. El operador ... expande esos valores dentro de un nuevo array, por lo que el array original no se modifica.

18. Ordenar números de menor a mayor

Enunciado: Ordenar correctamente un array numérico.

const numeros = [20, 3, 100, 8, 1];

numeros.sort(function (a, b) {
    return a - b;
});

console.log(numeros);

sort() modifica el array original. La función a - b indica que queremos un orden numérico ascendente; sin esa función, JavaScript ordenaría los valores como texto.

19. Contar la frecuencia de cada elemento

Enunciado: Contar cuántas veces aparece cada número dentro de un array.

const numeros = [1, 2, 2, 3, 3, 3];
const frecuencias = {};

for (const numero of numeros) {
    frecuencias[numero] = (frecuencias[numero] || 0) + 1;
}

console.log(frecuencias);

El objeto frecuencias usa cada número como propiedad. Si todavía no existe se toma 0; si ya existe, se incrementa su contador.

20. Crear una calculadora con funciones

Enunciado: Crear una función que pueda sumar, restar, multiplicar o dividir dos números.

function calcular(a, b, operacion) {
    if (operacion === "sumar") {
        return a + b;
    }

    if (operacion === "restar") {
        return a - b;
    }

    if (operacion === "multiplicar") {
        return a * b;
    }

    if (operacion === "dividir") {
        if (b === 0) {
            return "No se puede dividir por cero";
        }

        return a / b;
    }

    return "Operación no válida";
}

console.log(calcular(10, 5, "sumar"));
console.log(calcular(10, 5, "dividir"));

La función recibe los valores y la operación como parámetros. return finaliza la función y devuelve el resultado. También se valida la división por cero.

Cómo aprovechar estos ejercicios

No te limites a copiar las soluciones. Probá cambiar los valores, agregar validaciones, resolver el mismo problema de otra manera o convertir algunos ejercicios en funciones reutilizables. La práctica gana mucho valor cuando modificás el código y observás qué cambia.

Seguí aprendiendo JavaScript


¿Te sirvió esta guía? ☕

Si este contenido te ayudó a aprender JavaScript, podés apoyar a Club Programador. Cada aporte ayuda a mantener el sitio online y a seguir publicando material gratuito.

🇦🇷 Apoyar desde Argentina

☕ Invitame un café con Mercado Pago

🌎 Apoyar desde otro país

☕ Apoyar con PayPal


Descubre más desde Club Programador

Suscríbete y recibe las últimas entradas en tu correo electrónico.

2 opiniones en “20 ejercicios resueltos de JavaScript para principiantes”

Deja un comentario

Descubre más desde Club Programador

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo