2017-11-03 8 views
0

アラートするプロンプトに入力された「10進数」の合計文字値をどのように追加しますか。どうもありがとう。スイッチのアラートに合計10進値を追加する方法

var sw = prompt("Enter scrable word in caps:") 
 

 
switch (sw){ 
 
    
 
    case "A": decimal=1;break; 
 
    case "B": decimal=3;break; 
 
    case "C": decimal=3;break; 
 
    case "D": decimal=2;break; 
 
    case "E": decimal=1;break; 
 
    case "F": decimal=4;break; 
 
    case "G": decimal=2;break; 
 
    case "H": decimal=4;break; 
 
    case "I": decimal=1;break; 
 
    case "J": decimal=8;break; 
 
    case "K": decimal=5;break; 
 
    case "L": decimal=1;break; 
 
    case "M": decimal=3;break; 
 
    case "N": decimal=1;break; 
 
    case "O": decimal=1;break; 
 
    case "P": decimal=3;break; 
 
    case "Q": decimal=10;break; 
 
    case "R": decimal=1;break; 
 
    case "S": decimal=1;break; 
 
    case "T": decimal=1;break; 
 
    case "U": decimal=1;break; 
 
    case "V": decimal=4;break; 
 
    case "W": decimal=4;break; 
 
    case "X": decimal=8;break; 
 
    case "Y": decimal=4;break; 
 
    case "Z": decimal=10;break; 
 
    
 
    default: decimal="Not a capital letter"; 
 
} 
 

 
alert("The score for"+sw+"is:"+decimal)

+1

あなたが疑問取得できませんでした。 「合計文字値が「小数」であることはどういう意味ですか? –

+0

私は合計を見つけて警告する方法を知りたい - たとえば、MANに入力された値がMに与えられた値が3、Aが1、N 1であるので、合計は5になります。したがって、この場合は5を出力する方法を知りたいので、MANの合計値を取得します。ありがとう – Bobby

答えて

1

あなたはおそらく、各文字でオブジェクトをスコア持ち、その後、.split入力をしてスコアを取得するために.reduceを使用する必要があります。

var values = { 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 sw = prompt("Enter scrable word in caps:") 
var letters = sw.split(''); 
var score = letters.reduce(function(accumulator, current) { 
    return accumulator + values[current]; 
}, 0); 
alert(score); 
関連する問題