DEV Community

Cristian Fernando
Cristian Fernando

Posted on

Paracetamol.js馃拪| #106: Explica este c贸digo JavaScript

Explica este c贸digo JavaScript

Dificultad: Intermedio

const gato = {
  id: 3,
  nombre:"Michi",
  emoji: "馃樅",
  saludar(){
    return "Hola " + this.nombre
  },
}

console.log(gato.despedirse?.())
console.log(gato.despedirse())
Enter fullscreen mode Exit fullscreen mode

A. TypeError: gato.despedirse is not a function
B. SyntaxisError y undefined
C. undefined y undefined
D. undefined y TypeError: gato.despedirse is not a function

Respuesta en el primer comentario.


Discussion (1)

Collapse
duxtech profile image
Cristian Fernando Author

Respuesta:
D. undefined y TypeError: gato.despedirse is not a function

El operador ?. o encadenamiento opcional es usado en javascript por ejemplo para evitar el programa deje de funcionar si encuntra alguna inconsistencia.

En el ejemplo intentamos llamar al m茅todo despedirse del objeto gato pero dicho m茅todo no existe.

Al usar el encadenamiento opcional de la siguiente manera gato.despedirse?.() podemos estar seguros que si el m茅todo no existe entonces javascript nos lance un undefined y no ning煤n tipo de error que haga que la ejecuci贸n del programa se inerrumpa.

Cuando lo llamamos de la manera tradicional gato.despedirse() el interprete nos lanza un TypeError: gato.despedirse is not a function porque claramente despedirse no existe en el objeto gato.