Back to Freecodecamp

Challenge 93: Vowels and Consonants

curriculum/challenges/english/blocks/daily-coding-challenges-javascript/68f6587287ad1f4ad39b0c7f.md

latest1.4 KB
Original Source

--description--

Given a string, return an array with the number of vowels and number of consonants in the string.

  • Vowels consist of a, e, i, o, u in any case.
  • Consonants consist of all other letters in any case.
  • Ignore any non-letter characters.

For example, given "Hello World", return [3, 7].

--hints--

count("Hello World") should return [3, 7].

js
assert.deepEqual(count("Hello World"), [3, 7]);

count("JavaScript") should return [3, 7].

js
assert.deepEqual(count("JavaScript"), [3, 7]);

count("Python") should return [1, 5].

js
assert.deepEqual(count("Python"), [1, 5]);

count("freeCodeCamp") should return [5, 7].

js
assert.deepEqual(count("freeCodeCamp"), [5, 7]);

count("Hello, World!") should return [3, 7].

js
assert.deepEqual(count("Hello, World!"), [3, 7]);

count("The quick brown fox jumps over the lazy dog.") should return [11, 24].

js
assert.deepEqual(count("The quick brown fox jumps over the lazy dog."), [11, 24]);

--seed--

--seed-contents--

js
function count(str) {

  return str;
}

--solutions--

js
function count(str) {
  const vowels = 'aeiou';
  const consonants = 'bcdfghjklmnpqrstvwxyz';
  let v = 0, c = 0;

  for (let i=0; i<str.length; i++) {
    if (vowels.includes(str[i].toLowerCase())) {
      v++;
    }
    if (consonants.includes(str[i].toLowerCase())) {
      c++;
    }
  }

  return [v, c];
}