* Remove unnecessary comments https://github.com/freeCodeCamp/freeCodeCamp/pull/41612 * Remove unnecessary comment
		
			
				
	
	
		
			100 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			100 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| id: 56533eb9ac21ba0edf2244cc
 | |
| title: Accessing Nested Objects
 | |
| challengeType: 1
 | |
| videoUrl: 'https://scrimba.com/c/cRnRnfa'
 | |
| forumTopicId: 16161
 | |
| dashedName: accessing-nested-objects
 | |
| ---
 | |
| 
 | |
| # --description--
 | |
| 
 | |
| The sub-properties of objects can be accessed by chaining together the dot or bracket notation.
 | |
| 
 | |
| Here is a nested object:
 | |
| 
 | |
| ```js
 | |
| var ourStorage = {
 | |
|   "desk": {
 | |
|     "drawer": "stapler"
 | |
|   },
 | |
|   "cabinet": {
 | |
|     "top drawer": { 
 | |
|       "folder1": "a file",
 | |
|       "folder2": "secrets"
 | |
|     },
 | |
|     "bottom drawer": "soda"
 | |
|   }
 | |
| };
 | |
| ourStorage.cabinet["top drawer"].folder2;
 | |
| ourStorage.desk.drawer;
 | |
| ```
 | |
| 
 | |
| `ourStorage.cabinet["top drawer"].folder2` would be the string `secrets`, and `ourStorage.desk.drawer` would be the string `stapler`.
 | |
| 
 | |
| # --instructions--
 | |
| 
 | |
| Access the `myStorage` object and assign the contents of the `glove box` property to the `gloveBoxContents` variable. Use dot notation for all properties where possible, otherwise use bracket notation.
 | |
| 
 | |
| # --hints--
 | |
| 
 | |
| `gloveBoxContents` should equal the string `maps`.
 | |
| 
 | |
| ```js
 | |
| assert(gloveBoxContents === 'maps');
 | |
| ```
 | |
| 
 | |
| Your code should use dot and bracket notation to access `myStorage`.
 | |
| 
 | |
| ```js
 | |
| assert(/=\s*myStorage\.car\.inside\[\s*("|')glove box\1\s*\]/g.test(code));
 | |
| ```
 | |
| 
 | |
| # --seed--
 | |
| 
 | |
| ## --after-user-code--
 | |
| 
 | |
| ```js
 | |
| (function(x) { 
 | |
|   if(typeof x != 'undefined') { 
 | |
|     return "gloveBoxContents = " + x;
 | |
|   }
 | |
|   return "gloveBoxContents is undefined";
 | |
| })(gloveBoxContents);
 | |
| ```
 | |
| 
 | |
| ## --seed-contents--
 | |
| 
 | |
| ```js
 | |
| var myStorage = {
 | |
|   "car": {
 | |
|     "inside": {
 | |
|       "glove box": "maps",
 | |
|       "passenger seat": "crumbs"
 | |
|      },
 | |
|     "outside": {
 | |
|       "trunk": "jack"
 | |
|     }
 | |
|   }
 | |
| };
 | |
| 
 | |
| var gloveBoxContents = undefined;
 | |
| ```
 | |
| 
 | |
| # --solutions--
 | |
| 
 | |
| ```js
 | |
| var myStorage = {
 | |
|   "car":{
 | |
|     "inside":{
 | |
|       "glove box":"maps",
 | |
|       "passenger seat":"crumbs"
 | |
|     },
 | |
|     "outside":{
 | |
|       "trunk":"jack"
 | |
|     }
 | |
|   }
 | |
| };
 | |
| var gloveBoxContents = myStorage.car.inside["glove box"];
 | |
| ```
 |