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
.