Coding Meetup #12 - Higher-Order Functions Series - Find GitHub admins
Description:
You will be given an array of objects representing data about developers who have signed up to attend the next coding meetup that you are organising.
Given the following input array:
var list1 = [
{ firstName: 'Harry', lastName: 'K.', country: 'Brazil', continent: 'Americas', age: 22, language: 'JavaScript', githubAdmin: 'yes' },
{ firstName: 'Kseniya', lastName: 'T.', country: 'Belarus', continent: 'Europe', age: 49, language: 'Ruby', githubAdmin: 'no' },
{ firstName: 'Jing', lastName: 'X.', country: 'China', continent: 'Asia', age: 34, language: 'JavaScript', githubAdmin: 'yes' },
{ firstName: 'Piotr', lastName: 'B.', country: 'Poland', continent: 'Europe', age: 128, language: 'JavaScript', githubAdmin: 'no' }
];
write a function that when executed as findAdmin(list1, 'JavaScript')
returns only the JavaScript developers who are GitHub admins:
[
{ firstName: 'Harry', lastName: 'K.', country: 'Brazil', continent: 'Americas', age: 22, language: 'JavaScript', githubAdmin: 'yes' },
{ firstName: 'Jing', lastName: 'X.', country: 'China', continent: 'Asia', age: 34, language: 'JavaScript', githubAdmin: 'yes' }
]
Notes:
- The original order should be preserved.
- If there are no GitHub admin developers in a given language then return an empty array
[]
. - The input array will always be valid and formatted as in the example above.
- The strings representing whether someone is a GitHub admin will always be formatted as
'yes'
and'no'
(all lower-case). - The strings representing a given language will always be formatted in the same way (e.g.
'JavaScript'
will always be formatted with upper-case 'J' and 'S'.
This kata is part of the Coding Meetup series which includes a number of short and easy to follow katas which have been designed to allow mastering the use of higher-order functions. In JavaScript this includes methods like: forEach, filter, map, reduce, some, every, find, findIndex
. Other approaches to solving the katas are of course possible.
Here is the full list of the katas in the Coding Meetup series:
Coding Meetup #2 - Higher-Order Functions Series - Greet developers
Coding Meetup #3 - Higher-Order Functions Series - Is Ruby coming?
Coding Meetup #4 - Higher-Order Functions Series - Find the first Python developer
Coding Meetup #5 - Higher-Order Functions Series - Prepare the count of languages
Coding Meetup #6 - Higher-Order Functions Series - Can they code in the same language?
Coding Meetup #7 - Higher-Order Functions Series - Find the most senior developer
Coding Meetup #8 - Higher-Order Functions Series - Will all continents be represented?
Coding Meetup #9 - Higher-Order Functions Series - Is the meetup age-diverse?
Coding Meetup #10 - Higher-Order Functions Series - Create usernames
Coding Meetup #11 - Higher-Order Functions Series - Find the average age
Coding Meetup #12 - Higher-Order Functions Series - Find GitHub admins
Coding Meetup #13 - Higher-Order Functions Series - Is the meetup language-diverse?
Coding Meetup #14 - Higher-Order Functions Series - Order the food
Coding Meetup #15 - Higher-Order Functions Series - Find the odd names
Coding Meetup #16 - Higher-Order Functions Series - Ask for missing details
Similar Kata:
Stats:
Created | Nov 17, 2016 |
Published | Nov 17, 2016 |
Warriors Trained | 6762 |
Total Skips | 94 |
Total Code Submissions | 11040 |
Total Times Completed | 5966 |
JavaScript Completions | 4860 |
Python Completions | 1169 |
COBOL Completions | 6 |
Total Stars | 51 |
% of votes with a positive feedback rating | 94% of 928 |
Total "Very Satisfied" Votes | 828 |
Total "Somewhat Satisfied" Votes | 91 |
Total "Not Satisfied" Votes | 9 |
Total Rank Assessments | 8 |
Average Assessed Rank | 7 kyu |
Highest Assessed Rank | 7 kyu |
Lowest Assessed Rank | 8 kyu |