Ejercicio00:00
¿Quieres un reto mayor?
Resuelve en 10:00
info
Importante: Para que se registre el resultado tienes que iniciar sesión.
Combina ?. y ?? en un accessor seguro
Medio20 pts
ruleRestricciones
- radio_button_uncheckedUsa optional chaining (?. )
- radio_button_uncheckedUsa nullish coalescing (??)
Enunciado
Implementa una función que accede de forma segura a una propiedad profundamente anidada de un objeto de configuración, usando ?. para evitar errores y ?? para proveer un valor por defecto preciso.
Instrucciones:
- Recibe un objeto
AppConfigdondedatabaseydatabase.connectionson opcionales. - Accede a
database.connection.timeoutusando?.para manejar los niveles opcionales. - Usa
??para retornar5000sitimeoutesnulloundefined— pero respeta0si ese es el valor configurado.
interface AppConfig {
database?: { connection?: { host: string; timeout?: number } } | null;
}
getTimeout({ database: { connection: { host: "localhost", timeout: 3000 } } })
// 3000
getTimeout({ database: { connection: { host: "localhost", timeout: 0 } } })
// 0 ← 0 es un valor válido, no debe reemplazarse con el default
getTimeout({ database: null })
// 5000
getTimeout({})
// 5000
Restriccionesexpand_more
- Dificultad: Medio
- Completa todos los test cases para obtener los 20 puntos.
- No modificar la línea
exportal final del archivo. - Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.
Puedes usar console.log() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.
Inicia sesión para reaccionar
Inicia sesión para reaccionar