JS Cardio
JS exercises
by trentHarlem
HTML
<header>
<h1>
/* JS Cardio */
</h1>
</header>
<h2>
Session One
</h2>
<Section>
<ul>
<li>Reverse String</li>
<li>Palindrome Checker</li>
<li>Capitalize Letter</li>
<li>Most Occurrences</li>
<li>Fizz Buzz</li>
</ul>
</Section>
CSS
body {
background-color: blueviolet;
color: whitesmoke;
font: bold 1.2em system-ui, sans-serif;
text-align: center;
}
header {
position: relative;
margin: 5px;
}
h1,
h2 {
-webkit-text-stroke: 2px black;
-webkit-text-fill-color: blueviolet;
}
h2 {
font-size: 1.9em;
margin: 40px 0px 10px 0px;
-webkit-text-fill-color: #33333399;
}
header h1 {
position: relative;
/* color: yellow; */
-webkit-text-fill-color: blueviolet;
-webkit-text-stroke: 1px blanchedalmond;
border: 1px solid chartreuse;
border-radius: 32px;
background: #ffffff33;
margin: 0;
padding: 12px;
}
header h1 span {
font-family: monospace;
-webkit-text-fill-color: blueviolet;
}
/* to center bullets */
ul {
display: inline-block;
list-style-type: circle;
text-align: left;
}
JavaScript
// JS CARDIO
// reverse string
const rev = s => s.split('').reverse().join('')
console.log(rev('Let\'s Play!'))
function revStr(str) {
let output = []
for (let c of str) output.unshift(c)
return output.join('')
}
console.log(revStr('type some shit here'))
console.log(revStr('haha... you\'re on the way Back!'))
const revRed = s => s.split('').reduce((revS, c) => c + revS, '')
console.log(revRed('Let\'s Play!'))
// is Palindrome
const isPalindrome = s => (s === s.split('').reverse().join('')) ? true : false
console.log(isPalindrome('hello'))
console.log(isPalindrome('racecar'))
///////////
// Capitalize Letter
function capLetter(str) {
const capitalize = word => word.replace(word[0], word[0].toUpperCase())
return str.toLowerCase().split(' ').map(capitalize).join(' ')
}
console.log(capLetter('hello'))
/* console.log(capLetter('god bless america')) */
//////////
// Max Char
function maxChar(str) {
const strObj = str.split('').reduce((occurrences, letter) => {
occurrences[letter] = occurrences[letter] ? (occurrences[letter] + 1) : 1;
return occurrences;
}, {});
const [letter, amount] = Object.entries(strObj).sort((a, b) => b[1] - a[1]).shift()
return `The letter ${letter} occurs ${amount} times.`
}
console.log(maxChar('javascript'))
//////////
// random FIZZBUZZ challenge
function fizzBuzz(n) {
for (let i = 1; i <= n; i++) {
if (i % 3 === 0) console.log('FIZZ')
if (i % 5 === 0) console.log('BUZZ')
if (i % 3 === 0 && i % 5 === 0) console.log('FIZZBUZZ')
else console.log(i)
}
}
//fizzBuzz(30)
/* return arr.reduce((occurrences, letter) => {
occurrences[letter] = occurrences[letter] ? (occurrences[letter] + 1) : 1;
return occurrences;}, {}); */