|
32 | 32 | // Array.prototype.filter() |
33 | 33 | // 1. Filter the list of inventors for those who were born in the 1500's |
34 | 34 | console.log('#1. Filter'); |
35 | | - console.log( |
36 | | - inventors.filter( inventor => { |
37 | | - return (inventor.year >= 1500 && inventor.year < 1600); |
38 | | - }) |
39 | | - ); |
| 35 | + console.table(inventors.filter(inventor => (inventor.year >= 1500 && inventor.year < 1600))); |
40 | 36 |
|
41 | 37 | // Array.prototype.map() |
42 | 38 | // 2. Give us an array of the inventors first and last names |
43 | 39 | console.log('#2. Map'); |
44 | | - console.log( |
45 | | - inventors.map( inventor => { |
46 | | - return { |
47 | | - first: inventor.first, |
48 | | - last: inventor.last |
49 | | - } |
50 | | - }) |
51 | | - ); |
| 40 | + console.table(inventors.map( inventor => inventor.first + ' ' + inventor.last)); |
52 | 41 |
|
53 | 42 | // Array.prototype.sort() |
54 | 43 | // 3. Sort the inventors by birthdate, oldest to youngest |
55 | 44 | console.log('#3. Sort'); |
56 | | - console.log( |
57 | | - inventors.sort( (a, b) => { |
58 | | - if (a.year > b.year) { |
59 | | - return 1; |
60 | | - } else if (a.year < b.year) { |
61 | | - return -1; |
62 | | - } else { |
63 | | - return 0; |
64 | | - } |
65 | | - }) |
66 | | - ); |
| 45 | + console.table(inventors.sort((a, b) => (a.year > b.year) ? 1 : -1)); |
67 | 46 |
|
68 | 47 | // Array.prototype.reduce() |
69 | 48 | // 4. How many years did all the inventors live all together? |
70 | 49 | console.log('#4. Reduce'); |
71 | 50 | console.log( |
72 | | - inventors.reduce((sum, inventor) => { |
73 | | - console.log(sum, inventor); |
74 | | - return (sum + (inventor.passed - inventor.year)); |
75 | | - }, 0) |
76 | | - ) |
| 51 | + inventors.reduce((sum, inventor) => (sum + inventor.passed - inventor.year), 0) |
| 52 | + ); |
77 | 53 |
|
78 | 54 | // 5. Sort the inventors by years lived |
79 | 55 | console.log('#5. Sort 2'); |
80 | | - console.log( |
| 56 | + console.table( |
81 | 57 | inventors.sort( (a, b) => { |
82 | 58 | if ((a.passed - a.year) > (b.passed - b.year)) { |
83 | 59 | return 1; |
|
91 | 67 |
|
92 | 68 | // 6. create a list of Boulevards in Paris that contain 'de' anywhere in the name |
93 | 69 | // https://en.wikipedia.org/wiki/Category:Boulevards_in_Paris |
94 | | - |
| 70 | + let links = ["Boulevards of Paris", "City walls of Paris", "Thiers wall", "Wall of Charles V", "Wall of Philip II Augustus", "City gates of Paris", "Haussmann's renovation of Paris", "Boulevards of the Marshals", "Boulevard Auguste-Blanqui", "Boulevard Barbès", "Boulevard Beaumarchais", "Boulevard de l'Amiral-Bruix", "Boulevard Mortier", "Boulevard Poniatowski", "Boulevard Soult", "Boulevard des Capucines", "Boulevard de la Chapelle", "Boulevard de Clichy", "Boulevard du Crime", "Boulevard du Général-d'Armée-Jean-Simon", "Boulevard Haussmann", "Boulevard de l'Hôpital", "Boulevard des Italiens", "Boulevard Lefebvre", "Boulevard de la Madeleine", "Boulevard de Magenta", "Boulevard Marguerite-de-Rochechouart", "Boulevard Montmartre", "Boulevard du Montparnasse", "Boulevard Raspail", "Boulevard Richard-Lenoir", "Boulevard Saint-Germain", "Boulevard Saint-Michel", "Boulevard de Sébastopol", "Boulevard de Strasbourg", "Boulevard du Temple", "Boulevard Voltaire", "Boulevard de la Zone"]; |
| 71 | + console.log(links.filter(link => link.includes('de'))); |
95 | 72 |
|
96 | 73 | // 7. sort Exercise |
97 | 74 | // Sort the people alphabetically by last name |
98 | 75 | console.log('#7. Sort Last Name'); |
99 | | - console.log( |
| 76 | + console.table( |
100 | 77 | people.sort((a, b) => { |
101 | | - let a_lastName = a.split(', ')[1]; |
102 | | - let b_lastName = b.split(', ')[1]; |
| 78 | + let a_lastName = a.split(', ')[0]; |
| 79 | + let b_lastName = b.split(', ')[0]; |
103 | 80 | if (a_lastName > b_lastName) { |
104 | 81 | return 1; |
105 | 82 | } else if (a_lastName < b_lastName) { |
|
113 | 90 | // 8. Reduce Exercise |
114 | 91 | // Sum up the instances of each of these |
115 | 92 | const data = ['car', 'car', 'truck', 'truck', 'bike', 'walk', 'car', 'van', 'bike', 'walk', 'car', 'van', 'car', 'truck' ]; |
| 93 | + console.log('#8. Reduce Exercise'); |
| 94 | + let frequency = data.reduce((freqHash, ele) => { |
| 95 | + if (freqHash[ele] === undefined) { |
| 96 | + freqHash[ele] = 1; |
| 97 | + } else { |
| 98 | + freqHash[ele] += 1; |
| 99 | + } |
| 100 | + return freqHash; |
| 101 | + }, {}); |
| 102 | + console.table(frequency); |
116 | 103 |
|
117 | 104 | </script> |
118 | 105 | </body> |
|
0 commit comments