
Daniel Ruben Rivas Saltos
Preguntapor querer complicarmela mas la hice con operadores ternarios
function getPetExerciseInfo(type, age) { // Tu Código aquí 👈 switch (type) { case "perro": age < 1 ? console.log("Los cachorros necesitan pequeñas y frecuentes sesiones de juego") : age >= 1 && age <= 7 ? console.log( "Los perros a esta edad necesitan caminatas diarias y sesiones de juego" ) : console.log("Los perros viejos necesitan caminatas más cortas"); return; break; case "gato": age < 1 ? console.log("Los gatitos necesitan pequeñas sesiones de juego") : age >= 1 && age <= 7 ? console.log( "Los gatos a esta edad necesitan jugar diriamente" ) : console.log("Los gatos viejos necesitan sesiones de juegos más cortas") return; break; case "ave": age < 1 ? console.log("Las aves necesitan jugar diariamente y un lugar para volar") : age >= 1 && age <= 7 ? console.log( "Las aves necesitan jugar diariamente y un lugar para volar" ) : console.log("Las aves mayores necesitan descansar más, pero siguen ocupando un lugar para volar") return; break; default: console.log("mascota no valida"); return ; } } getPetExerciseInfo("perro", 13); getPetExerciseInfo("gato", 13); getPetExerciseInfo("ave", 3); getPetExerciseInfo("cocodrilo", 3);
sin embargo por alguna razon solo usando los console peudo mostrar los mensajes, al colocar return despues de los : en lugar de console me da error, alguien podria hecarme una mano? gracias
- Crea una variable al inicio de tu código y en lugar de los console.log asigna el valor a la variable
- Cuando usas ternarias en un switch, no es recomendable que uses return, en su lugar usa solo el break para romper el switch. Pon el return hasta el final de tu con la variable que cambiará de valor.
- Si usas return, no usas break en tu switch y viceversa. Esto porque return retorna directamente el valor y break solo se sale del switch cuando encuentre la primer condición buscada y return directamente acaba con la función

Rahiber Paradas
Gracias Leo, aunque no hice la pregunta tenía la duda si colocar el break en el switch con return.

Daniel Ruben Rivas Saltos
Gracias, lo pondré a prueba

Christiaan Alberto Vargas Acosta
Debes tener los siguientes criterios en cuenta:
Primero el return se usa con la siguiente estructuras:
return 'lo que vas a retornar'
Segundo en el switch si usas el return no es necesario el break
// ejemplo de como se debe ver la estructura del código. switch () { case '1': return 'lo que vas a retornar' default: return 'lo que vas a retornar' }
Tercero La estructura de "arrow function" tiene la siguiente estructura:
criterio true ? "lo que se va a ejecutar o retornar" : "en caso ser falso que se debe hacer"; // ejemplo de código: age < 1 ? "Los cachorros necesitan pequeñas y frecuentes sesiones de juego" : "otro criterio";
Leonardo de los angeles Espinoza Hernandez
Con las ternarias pasa algo interesante, por lo regular se espera que sean usadas en arrow functions o en funciones que directamente retornen algo Ejemplos:
function somethin(value){ return {/* aquí va la condición ternaria*/} }
En tu caso al estar poniéndolas dentro del switch pues solamente retornan el valor a la nada, es necesario que sean asignadas a una variable. / Te dejo aquí un par de recomendaciones para que tu código pase sin problema alguno:
Espero sea de ayuda todo esto :D