2017-03-16 36 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