Back to Freecodecamp

Challenge 204: Sum the Letters

curriculum/challenges/english/blocks/daily-coding-challenges-javascript/698a1a73ade5ac0e19180fa7.md

latest1.5 KB
Original Source

--description--

Given a string, return the sum of its letters.

  • Letters are A-Z in uppercase or lowercase
  • Letter values are: "A" = 1, "B" = 2, ..., "Z" = 26
  • Uppercase and lowercase letters have the same value.
  • Ignore all non-letter characters.

--hints--

sumLetters("Hello") should return 52.

js
assert.equal(sumLetters("Hello"), 52);

sumLetters("freeCodeCamp") should return 94.

js
assert.equal(sumLetters("freeCodeCamp"), 94);

sumLetters("The quick brown fox jumps over the lazy dog.") should return 473.

js
assert.equal(sumLetters("The quick brown fox jumps over the lazy dog."), 473);

sumLetters("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ex nisl, pretium eu varius blandit, facilisis quis eros. Vestibulum ante ipsum primis in faucibus orci.") should return 1681.

js
assert.equal(sumLetters("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ex nisl, pretium eu varius blandit, facilisis quis eros. Vestibulum ante ipsum primis in faucibus orci."), 1681);

sumLetters("</404>") should return 0.

js
assert.equal(sumLetters("</404>"), 0);

--seed--

--seed-contents--

js
function sumLetters(str) {

  return str;
}

--solutions--

js
function sumLetters(str) {
  let total = 0;
  for (let char of str) {
    let upper = char.toUpperCase();
    if (upper >= "A" && upper <= "Z") {
      total += upper.charCodeAt(0) - "A".charCodeAt(0) + 1;
    }
  }
  return total;
}