2017-03-16 62 views
0

我製作了一個程序,用戶必須回答5個問題。當用戶鍵入某個答案時,分數將添加到匹配的類別中。這是我寫的代碼的部分(帶有一點點幫助,我不是非常有經驗):警報最高編號

var orientaal = 0; 
var houtig = 0; 
var bloemig = 0; 
var aromatisch = 0; 
var chypre = 0; 
var citrus = 0; 

var q1 = prompt('Welk element spreekt jou het meest aan? Zet de letters van hoog naar laag (bijv. DBAC). \n\n A. Vuur \n B. Lucht \n C. Aarde \n D. Water') 

switch(q1[0]) { 
    case 'A': 
    case 'a': 
    orientaal += 3; 
    break; 
    case 'B': 
    case 'b': 
    bloemig += 3; 
    break; 
    case 'C': 
    case 'c': 
    houtig += 3; 
    break; 
    case 'D': 
    case 'd': 
    citrus += 3; 
    break; 
} 
switch(q1[1]) { 
    case 'A': 
    case 'a': 
    orientaal += 2; 
    break; 
    case 'B': 
    case 'b': 
    bloemig += 2; 
    break; 
    case 'C': 
    case 'c': 
    houtig += 2; 
    break; 
    case 'D': 
    case 'd': 
    citrus += 2; 
    break; 
} 

我想提醒三類得分最高。我該怎麼做呢?

回答

2
var categories = [ 
    { name: 'orientaal', value: orientaal }, 
    { name: 'bloemig', value: bloemig }, 
    { name: 'houtig', value: houtig }, 
    { name: 'citrus', value: citrus }, 
    { name: 'aromatisch', value: aromatisch }, 
    { name: 'chypre', value: chypre } 
]; 

//   sorting in decending order    getting the top 3 
categories.sort(function(a, b) { return b.value - a.value; }).slice(0, 3); 

// Returns an array of 3 objects 
[ 
    {name: 'orientaal', value: 20}, 
    {name: 'bloemig', value: 19}, 
    {name: 'houtig', value: 15}, 
] 
+0

您如何知道哪些類別與這些值相對應? – grimmdude

+1

哦,是的,好點,完全忘了將它們匹配到類別:)讓我更新代碼來使用對象,而不是... – Uzbekjon