--- id: 5a23c84252665b21eecc7edc title: Last Friday of each month challengeType: 5 --- ## Description
Write a function that returns the date of the last Friday of a given month for a given year.
## Instructions
## Tests
``` yml tests: - text: lastFriday should be a function. testString: assert(typeof lastFriday == 'function', 'lastFriday should be a function.'); - text: lastFriday(2018, 1) should return a number. testString: assert(typeof lastFriday(2018, 1) == 'number', 'lastFriday(2018, 1) should return a number.'); - text: lastFriday(2018, 1) should return 26. testString: assert.equal(lastFriday(2018, 1), 26, 'lastFriday(2018, 1) should return 26.'); - text: lastFriday(2017, 2) should return 24. testString: assert.equal(lastFriday(2017, 2), 24, 'lastFriday(2017, 2) should return 24.'); - text: lastFriday(2012, 3) should return 30. testString: assert.equal(lastFriday(2012, 3), 30, 'lastFriday(2012, 3) should return 30.'); - text: lastFriday(1900, 4) should return 27. testString: assert.equal(lastFriday(1900, 4), 27, 'lastFriday(1900, 4) should return 27.'); - text: lastFriday(2000, 5) should return 26. testString: assert.equal(lastFriday(2000, 5), 26, 'lastFriday(2000, 5) should return 26.'); - text: lastFriday(2006, 6) should return 30. testString: assert.equal(lastFriday(2006, 6), 30, 'lastFriday(2006, 6) should return 30.'); - text: lastFriday(2010, 7) should return 30. testString: assert.equal(lastFriday(2010, 7), 30, 'lastFriday(2010, 7) should return 30.'); - text: lastFriday(2005, 8) should return 26. testString: assert.equal(lastFriday(2005, 8), 26, 'lastFriday(2005, 8) should return 26.'); ```
## Challenge Seed
```js function lastFriday(year, month) { // Good luck! } ```
## Solution
```js function lastFriday (year, month) { var i, last_day; i = 0; while (true) { last_day = new Date(year, month, i); if (last_day.getDay() === 5) { return last_day.getDate(); } i -= 1; } }; ```