DEV Community

Cristian Fernando
Cristian Fernando

Posted on • Updated on

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

Explica este c贸digo JavaScript

Dificultad: B谩sico

const persona = {
  nombre: "Cris",
  saludo() {
    return `Hola, ${nombre}`
  }
}

console.log(persona.saludo())
Enter fullscreen mode Exit fullscreen mode

A. Hola Cris
B. Hola undefined
C. SyntaxisError
D. ReferenceError: nombre is not defined

Respuesta en el primer comentario.


Respuesta:
D. ReferenceError: nombre is not defined

Para poder acceder a una propiedad desde un m茅todo de un objeto, es necesario hacer uso de la variable especial this que apunta al contexto actual donde se ejecuta la funci贸n.

Como no especificamos que la variable nombre que necesitamos es la que esta dentro del objeto persona, javascript intentara acceder a la variable nombre desde el objeto global window y como no hay ninguna propiedad nombre en window entonces muestra ReferenceError: nombre is not defined.

Para solucionar esto, basta con usar this:

saludo() {
  return `Hola, ${this.nombre}`
}
console.log(persona.saludo()) // Hola Cris
Enter fullscreen mode Exit fullscreen mode

Top comments (0)