Count vowels

Things to learn -

function countVowels(str) {
    const vowels = ['a', 'e', 'i', 'o', 'u'];
    let count = 0;
    for (let i = 0; i < str.length; i++) {
        if (vowels.includes(str[i].toLowerCase())) {
            count++;
        }
    }
    return count;
}

Palindrome

Things to learn

  1. , and . should be removed from the string
  2. Using filter
function isPalindrome(str) {
  const lowercaseStr = str.toLowerCase();
  const filteredStr = lowercaseStr.split('').filter((char) => (char !== '?' && char !== ' ' && char !== '!' && char !== '.' && char !== ',')).join('');
  const reversedStr = filteredStr.split('').reverse().join('');
  return filteredStr === reversedStr;
}

Times

Things to learn

  1. How long does synchronous code take to run

function calculateTime(n) {
    const startTime = Date.now();
    let sum = 0;
    for (let i = 1; i <= n; i++) {
        sum += i;
    }
    const endTime = Date.now();
    console.log(endTime - startTime);
}

calculateTime(100);