Error al acceder a la propiedad de un objeto en JavaScript
Al acceder a una propiedad de un objeto, el nombre de esa propiedad no puede almacenarse en una variable. Veamos por qué. Supongamos que tenemos el siguiente objeto:
let obj = {a: 1, b: 2, c: 3};
Supongamos que la variable contiene el nombre de la propiedad cuyo valor queremos obtener:
let key = 'a';
Intentemos acceder a la propiedad del objeto usando esta variable:
console.log(obj.key); // undefined
El código anterior no funcionará,
ya que en realidad estamos buscando una propiedad con el nombre
'key', y no la propiedad cuyo nombre está almacenado
en la variable key. Es decir, en realidad
nuestro código es equivalente al siguiente:
console.log(obj['key']);
La única forma de acceder a un elemento por una clave desde una variable es escribir esta variable entre corchetes:
console.log(obj[key]);
Corrija el error cometido en el siguiente código:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj.prop);
Corrija el error cometido en el siguiente código:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj['prop']);