diff --git a/01 - JavaScript Drum Kit/index-START.html b/01 - JavaScript Drum Kit/index-START.html index 4070d32767..ecfbb3eafd 100644 --- a/01 - JavaScript Drum Kit/index-START.html +++ b/01 - JavaScript Drum Kit/index-START.html @@ -58,7 +58,23 @@ diff --git a/02 - JS and CSS Clock/index-START.html b/02 - JS and CSS Clock/index-START.html index 2712384201..2f4183797d 100644 --- a/02 - JS and CSS Clock/index-START.html +++ b/02 - JS and CSS Clock/index-START.html @@ -61,12 +61,48 @@ background:black; position: absolute; top:50%; + transform-origin: 100% 50%; + transform: rotate(90deg); + transition: all 0.05 ease-out 0s; } diff --git a/03 - CSS Variables/index-START.html b/03 - CSS Variables/index-START.html index ca2b59d077..0cc0ab22c7 100644 --- a/03 - CSS Variables/index-START.html +++ b/03 - CSS Variables/index-START.html @@ -21,7 +21,21 @@

Update CSS Variables with JS

diff --git a/04 - Array Cardio Day 1/index-START.html b/04 - Array Cardio Day 1/index-START.html index eec0ffc31d..d71db39f92 100644 --- a/04 - Array Cardio Day 1/index-START.html +++ b/04 - Array Cardio Day 1/index-START.html @@ -31,28 +31,56 @@ // Array.prototype.filter() // 1. Filter the list of inventors for those who were born in the 1500's + const fifteens = inventors.filter(inventor => inventor.year >= 1500 && inventor.year < 1600); + console.table(fifteens); // Array.prototype.map() // 2. Give us an array of the inventors' first and last names + const names = inventors.map(({ first, last }) => `${first} ${last}`); + console.log(names); // Array.prototype.sort() // 3. Sort the inventors by birthdate, oldest to youngest + const sorted = inventors.sort((a, b) => a.year > b.year ? 1 : -1) + console.table(sorted); // Array.prototype.reduce() // 4. How many years did all the inventors live? + const years = inventors.reduce((memo, item) => ( + memo + (item.passed - item.year) + ), 0); + console.log(years); // 5. Sort the inventors by years lived + const oldest = inventors.sort((a, b) => ( + (a.passed - a.year) < (b.passed - b.year) ? 1 : -1 + )); + console.table(oldest) // 6. create a list of Boulevards in Paris that contain 'de' anywhere in the name // https://en.wikipedia.org/wiki/Category:Boulevards_in_Paris - + const links = Array.from(document.querySelectorAll('.mw-category a')); + const de = links + .map(link => link.textContent) + .filter(name => name.includes('de')); // 7. sort Exercise // Sort the people alphabetically by last name + const alphabetically = people.sort((a, b) => { + const [ aLast, aFirst ] = a.split(', '); + const [ bLast, bFirst ] = b.split(', '); + return aLast > bLast ? 1 : -1; + }) + console.log(alphabetically); // 8. Reduce Exercise // Sum up the instances of each of these const data = ['car', 'car', 'truck', 'truck', 'bike', 'walk', 'car', 'van', 'bike', 'walk', 'car', 'van', 'car', 'truck' ]; + const sum = data.reduce((memo, item) => { + memo[item] ? memo[item]++ : memo[item] = 1; + return memo; + }, {}); + console.log(sum); diff --git a/05 - Flex Panel Gallery/index-START.html b/05 - Flex Panel Gallery/index-START.html index e1d643ad5c..7a09521f8a 100644 --- a/05 - Flex Panel Gallery/index-START.html +++ b/05 - Flex Panel Gallery/index-START.html @@ -24,6 +24,7 @@ .panels { min-height:100vh; overflow: hidden; + display: flex; } .panel { @@ -41,6 +42,11 @@ font-size: 20px; background-size:cover; background-position:center; + flex: 1; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; } @@ -54,6 +60,24 @@ margin:0; width: 100%; transition:transform 0.5s; + flex: 1 0 auto; + display: flex; + align-items: center; + justify-content: center; + } + + .panel > *:first-child { + transform: translateY(-100%); + } + .panel.open-active > *:first-child { + transform: translateY(0); + } + + .panel > *:last-child { + transform: translateY(100%); + } + .panel.open-active > *:last-child { + transform: translateY(0); } .panel p { @@ -67,6 +91,7 @@ } .panel.open { + flex: 5; font-size:40px; } @@ -107,6 +132,28 @@ diff --git a/06 - Type Ahead/index-START.html b/06 - Type Ahead/index-START.html index 1436886918..003d31fda0 100644 --- a/06 - Type Ahead/index-START.html +++ b/06 - Type Ahead/index-START.html @@ -15,8 +15,52 @@ diff --git a/07 - Array Cardio Day 2/index-START.html b/07 - Array Cardio Day 2/index-START.html index 969566ff78..040d8f5917 100644 --- a/07 - Array Cardio Day 2/index-START.html +++ b/07 - Array Cardio Day 2/index-START.html @@ -27,14 +27,24 @@ // Some and Every Checks // Array.prototype.some() // is at least one person 19 or older? // Array.prototype.every() // is everyone 19 or older? + const year = (new Date()).getFullYear(); + const some = people.some(human => ((year - human.year) >= 19)); + console.log(some); + const every = people.every(human => ((year - human.year) >= 19)); + console.log(every); // Array.prototype.find() // Find is like filter, but instead returns just the one you are looking for // find the comment with the ID of 823423 + const commentByID = comments.find(comment => comment.id === 823423); + console.log(commentByID); // Array.prototype.findIndex() // Find the comment with this ID // delete the comment with the ID of 823423 + const commentIndex = comments.findIndex(comment => comment.id === 823423); + comments.splice(commentIndex, 1); + console.log(comments); diff --git a/08 - Fun with HTML5 Canvas/index-START.html b/08 - Fun with HTML5 Canvas/index-START.html index 37c148df07..419683b0ac 100644 --- a/08 - Fun with HTML5 Canvas/index-START.html +++ b/08 - Fun with HTML5 Canvas/index-START.html @@ -7,6 +7,47 @@ diff --git a/17 - Sort Without Articles/index-START.html b/17 - Sort Without Articles/index-START.html index cfaf3e0440..c913761bb1 100644 --- a/17 - Sort Without Articles/index-START.html +++ b/17 - Sort Without Articles/index-START.html @@ -43,8 +43,29 @@ diff --git a/18 - Adding Up Times with Reduce/index-START.html b/18 - Adding Up Times with Reduce/index-START.html index abdf4c91af..d389805db0 100644 --- a/18 - Adding Up Times with Reduce/index-START.html +++ b/18 - Adding Up Times with Reduce/index-START.html @@ -182,6 +182,24 @@