125 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			125 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| id: 587d7b7c367417b2b2512b18
 | |
| title: Agrega pares clave-valor a objetos de JavaScript
 | |
| challengeType: 1
 | |
| forumTopicId: 301153
 | |
| dashedName: add-key-value-pairs-to-javascript-objects
 | |
| ---
 | |
| 
 | |
| # --description--
 | |
| 
 | |
| En su aspecto más básico, los objetos no son más que colecciones de pares <dfn>clave-valor</dfn>. En otras palabras, son piezas de datos (<dfn>valores</dfn>) asignados a identificadores únicos llamados <dfn>propiedades</dfn> (<dfn>claves</dfn>). Mira un ejemplo:
 | |
| 
 | |
| ```js
 | |
| const tekkenCharacter = {
 | |
|   player: 'Hwoarang',
 | |
|   fightingStyle: 'Tae Kwon Doe',
 | |
|   human: true
 | |
| };
 | |
| ```
 | |
| 
 | |
| El código anterior define un objeto de un personaje del videojuego Tekken como `tekkenCharacter`. Tiene tres propiedades, cada una de las cuales se asigna un valor específico. Si se quiere agregar una propiedad adicional, como "origin" (origen), se puede hacer asignando `origin` al objeto:
 | |
| 
 | |
| ```js
 | |
| tekkenCharacter.origin = 'South Korea';
 | |
| ```
 | |
| 
 | |
| Esto usa la notación de puntos. Si observas el objeto `tekkenCharacter`, ahora incluirá la propiedad `origin`. Hwoarang también tenía el cabello naranja. Puedes agregar esta propiedad con la notación de corchetes:
 | |
| 
 | |
| ```js
 | |
| tekkenCharacter['hair color'] = 'dyed orange';
 | |
| ```
 | |
| 
 | |
| La notación de corchetes es necesaria si tu propiedad tiene un espacio en ella o si se quiere utilizar una variable para nombrar la propiedad. En el caso anterior, la propiedad está entre comillas para denotar que es una cadena y se agregará exactamente como se muestra. Sin las comillas, se evaluará como una variable y el nombre de la propiedad será el valor que tenga la variable. He aquí un ejemplo con una variable:
 | |
| 
 | |
| ```js
 | |
| const eyes = 'eye color';
 | |
| 
 | |
| tekkenCharacter[eyes] = 'brown';
 | |
| ```
 | |
| 
 | |
| Tras agregar todos los ejemplos, el objeto se verá así:
 | |
| 
 | |
| ```js
 | |
| {
 | |
|   player: 'Hwoarang',
 | |
|   fightingStyle: 'Tae Kwon Doe',
 | |
|   human: true,
 | |
|   origin: 'South Korea',
 | |
|   'hair color': 'dyed orange',
 | |
|   'eye color': 'brown'
 | |
| };
 | |
| ```
 | |
| 
 | |
| # --instructions--
 | |
| 
 | |
| Se ha creado un objeto `foods` con tres entradas. Usando la sintaxis de tu elección, agrega tres entradas más: `bananas` con el valor de `13`, `grapes` con el valor de `35`, y `strawberries` con el valor de `27`.
 | |
| 
 | |
| # --hints--
 | |
| 
 | |
| `foods` debe ser un objeto.
 | |
| 
 | |
| ```js
 | |
| assert(typeof foods === 'object');
 | |
| ```
 | |
| 
 | |
| El objeto `foods` debe tener una clave `bananas` con el valor de `13`.
 | |
| 
 | |
| ```js
 | |
| assert(foods.bananas === 13);
 | |
| ```
 | |
| 
 | |
| El objeto `foods` debe tener una clave `grapes` con el valor de `35`.
 | |
| 
 | |
| ```js
 | |
| assert(foods.grapes === 35);
 | |
| ```
 | |
| 
 | |
| El objeto `foods` debe tener una clave `strawberries` con el valor de `27`.
 | |
| 
 | |
| ```js
 | |
| assert(foods.strawberries === 27);
 | |
| ```
 | |
| 
 | |
| Los pares clave-valor deben establecerse usando notación de puntos o de corchetes.
 | |
| 
 | |
| ```js
 | |
| assert(
 | |
|   code.search(/bananas:/) === -1 &&
 | |
|     code.search(/grapes:/) === -1 &&
 | |
|     code.search(/strawberries:/) === -1
 | |
| );
 | |
| ```
 | |
| 
 | |
| # --seed--
 | |
| 
 | |
| ## --seed-contents--
 | |
| 
 | |
| ```js
 | |
| let foods = {
 | |
|   apples: 25,
 | |
|   oranges: 32,
 | |
|   plums: 28
 | |
| };
 | |
| 
 | |
| // Only change code below this line
 | |
| 
 | |
| // Only change code above this line
 | |
| 
 | |
| console.log(foods);
 | |
| ```
 | |
| 
 | |
| # --solutions--
 | |
| 
 | |
| ```js
 | |
| let foods = {
 | |
|   apples: 25,
 | |
|   oranges: 32,
 | |
|   plums: 28
 | |
| };
 | |
| 
 | |
| foods['bananas'] = 13;
 | |
| foods['grapes']  = 35;
 | |
| foods['strawberries'] = 27;
 | |
| ```
 |