Explica este código JavaScript
const colorConfig = {
red: true,
blue: false,
green: true,
black: true,
yellow: false,
}
const colors = ["pink", "red", "blue"]
console.log(colorConfig.colors[1])
- A:
true
- B:
false
- C:
undefined
- D:
TypeError
Respuesta en el primer comentario.
Top comments (1)
Respuesta:
D:
TypeError
En javascript existen 2 maneras de acceder a las propiedades de los objetos, por notación del punto o por notación de corchetes.
Cuando hacemos
colorConfig.colors[1]
literalmente estamos buscando una propiedadcolors
en el objetocolorConfig
y como no existe esta propiedad entonces obtenemos unundefiend
, entonces ahora javascript intentará hacerundefined[1]
y esto no es un código valido, por ello la consola muestra unTypeError
.Cuando queremos usar variables para hacer lo que se denomina acceso a propiedades dinámicas de objetos necesitamos usar la notación de corchetes:
colorConfig[colors[1]]
que nos devolverátrue
, el valor de la propiedadred
del objetocolorConfig
.