Es indispensable, que junto con la teoría comencemos a ejercitar la misma, es para ello que en estos capítulos trabajaremos con todo lo que hemos estudiado, y haremos ejercicios que abarquen todo lo estudiado hasta ahora. Comenzamos.
Consejos a la hora de resolver ejercicios
Estos son algunos de los consejos que damos cuando vayáis a resolver ejercicios:
- Usar funciones expresadas con operadores ternarios para el retorno implícito. Deja tu código simple, limpio y expresivo.
- Usar operadores ternarios concatenados e indentados en lugar de if cuando este último no sea necesario. Al igual que el anterior es más fácil de leer y mantener.
- Hacer las validaciones necesarias al comienzo de una función y al último solucionar el problema. Dejar la solución para el final y resolver los posibles problemas primero con las validaciones.
- Definir valores por defecto en los parámetros de una función. Mantén el control de los parámetros y anticípate a posibles valores vacíos.
- Usar el return en condicionales if y alinear en código cuando sea de una sola línea. Evitar las llaves si el código de la condición tiene una sola línea.
- Si tu condición if ya tiene un return es redundante añadir un else. Evitar anidar varios else if en una condición, Hazlo simple y mantén el nivel sin utilizar tantos anidamientos en condiciones innecesarias.
Ejercicio 1 – número de caracteres
En el primer ejercicio programaremos una función que cuente el número de caracteres de una cadena de texto.
La sintaxis sería la siguiente para una función declarada:
function contarCaracteres(cadena = "") { if (!cadena) { console.warn("No ingresaste ninguna cadena"); } else { console.info( `La cadena "${cadena}" tiene ${cadena.length} caracteres` ); } } contarCaracteres("Hola Mundo");
Pero vamos a trabajar con funciones expresadas mejor, con lo cual, la sintaxis será la siguiente:
const contarCaracteres2 = (cadena2 = "") => !cadena2 ? console.log("No existe la cadena") : console.log( `La cadena "${cadena2}" tiene ${cadena2.length} caracteres` ); contarCaracteres2(); contarCaracteres2("Hola que tal");
Ejercicio 2 – texto recortado
A partir de este ejercicio sólo utilizaremos funciones expresadas. En el segundo ejercicio programaremos una función que devuelva el texto recortado según el número de caracteres indicados.
const recortarTexto = (cadena = "", longitud = undefined) => !cadena ? console.log("No ingresaste una cadena") : longitud === undefined ? console.log("No ingresaste una longitud") : console.log(cadena.slice(0, longitud)); recortarTexto(); recortarTexto("Hola Mundo"); recortarTexto(0); recortarTexto("Hola Mundo", 4);
Ejercicio 3 – devolver un Array
El tercer ejercicio consiste en programar una función, que dado un String, devuelva un Array de textos separados por cierto carácter.
const devArray = (cadena = "", separador = undefined) => { !cadena ? console.log("No ingresaste una cadena de texto") : separador === undefined ? console.log("No ingresaste el caracter separador") : console.log(cadena.split(separador)); }; devArray(); devArray("Hola Mundo"); devArray("Hola Mundo", " ");
Ejercicio 4 – texto se repite
En este ejercicio 4 programaremos una función que repita un texto x veces.
const repetirTexto = (cadena = "", numero = undefined) => { if (!cadena) return console.log("No ingresaste un texto"); if (numero === undefined) return console.log( "No ingresaste un número de veces a repetir el texto" ); if (numero === 0) return console.log("El número de veces no puede ser cero"); if (Math.sign(numero) === -1) return console.log("El número de veces no puede ser negativo"); for (let i = 1; i <= numero; i++) console.log(`${cadena}, ${i}`); }; repetirTexto("Hola Mundo", 5);