--- id: 587d7b89367417b2b2512b4a title: Use Destructuring Assignment to Assign Variables from Nested Objects challengeType: 1 --- ## Description
We can similarly destructure nested objects into variables. Consider the following code:
const a = {
  start: { x: 5, y: 6},
  end: { x: 6, y: -9 }
};
const { start : { x: startX, y: startY }} = a;
console.log(startX, startY); // 5, 6
In the example above, the variable start is assigned the value of a.start, which is also an object.
## Instructions
Use destructuring assignment to obtain max of forecast.tomorrow and assign it to maxOfTomorrow.
## Tests
```yml tests: - text: maxOfTomorrow equals 84.6 testString: assert(getMaxOfTmrw(LOCAL_FORECAST) === 84.6, 'maxOfTomorrow equals 84.6'); - text: nested destructuring was used testString: getUserInput => assert(getUserInput('index').match(/\{\s*tomorrow\s*:\s*\{\s*max\s*:\s*maxOfTomorrow\s*\}\s*\}\s*=\s*forecast/g),'nested destructuring was used'); ```
## Challenge Seed
```js const LOCAL_FORECAST = { today: { min: 72, max: 83 }, tomorrow: { min: 73.3, max: 84.6 } }; function getMaxOfTmrw(forecast) { "use strict"; // change code below this line const maxOfTomorrow = undefined; // change this line // change code above this line return maxOfTomorrow; } console.log(getMaxOfTmrw(LOCAL_FORECAST)); // should be 84.6 ```
## Solution
```js const LOCAL_FORECAST = { today: { min: 72, max: 83 }, tomorrow: { min: 73.3, max: 84.6 } }; function getMaxOfTmrw(forecast) { "use strict"; // change code below this line const {tomorrow : {max : maxOfTomorrow}} = forecast; // change this line // change code above this line return maxOfTomorrow; } console.log(getMaxOfTmrw(LOCAL_FORECAST)); // should be 84.6 ```