Explica este código JavaScript
function greeting() {
throw "Hello world!";
}
function sayHi() {
try {
const data = greeting();
console.log("It worked!", data);
} catch (e) {
console.log("Oh no an error!", e);
}
}
sayHi();
- A:
"It worked! Hello world!" - B:
"Oh no an error!" undefined - C:
SyntaxError: can only throw Error objects - D:
"Oh no an error! Hello world!"
Respuesta en el primer comentario.
Top comments (1)
Respuesta:
D: "Oh no an error! Hello world!
La función
greetingcon la palabra reservadathrowgenera una excepción de tipostringen el código.La función
sayHiconsta de una sentenciatry...catch, recordemos que si no hay ningún tipo de excepción el código ejecuta el bloquetrypero como si generamos una excepción entonces entramos al bloquecatchdonde el parámetroeadopta el valor de la excepción, osea,Hello world!. Por eso el resultado es"Oh no an error! Hello world!"