scrabble-score.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var LETTER_SCORES = {
  'A': 1, 'B': 3, 'C': 3, 'D': 2, 'E': 1, 'F': 4, 'G': 2, 'H': 4,
  'I': 1, 'J': 8, 'K': 5, 'L': 1, 'M': 3, 'N': 1, 'O': 1, 'P': 3,
  'Q': 10, 'R': 1, 'S': 1, 'T': 1, 'U': 1, 'V': 4, 'W': 4, 'X': 8,
  'Y': 4, 'Z': 10
};

var score = function(word) {
  if (!word) return 0;
  var letters = word.split('');

  return letters.reduce(function(sum, c) {
    return LETTER_SCORES[c.toUpperCase()] + sum;
  }, 0);
};


module.exports = score;

Comments


You're not logged in right now. Please login via GitHub to comment