Я пытаюсь использовать два оператора switch для интерпретации информации из вызова AJAX.Заявление о коммутаторе JS
код выглядит следующим образом: https://jsfiddle.net/8124qnog/2/
В принципе, я хочу, чтобы первый цикл, чтобы проверить через массив «roleArray» и присвоить значение в «роли» переменной. Он может иметь четыре различных значения:
L, S, J, или А.
Затем я хочу следующее заявление переключатель, чтобы проверить значение «роли» и посмотреть, является ли это L, S, J или A, и присваивать значения переменным.
Например, когда я пытаюсь сделать console.log(aFactor)
, я получаю неопределенное значение, которое, по-видимому, означает, что мой цикл не работает или оператор switch не закодирован правильно.
Могу ли я это сделать?
Спасибо!
EDIT:
Код:
//ALGORITHM START
for (i = 0, i < 10; i++;) {
switch (roleArray[i]) {
case "DUO":
//assumes top lane duo
role = "L";
console.log(role);
break;
case "DUO_CARRY":
//assumes bot lane adc
role = "A";
console.log(role);
break;
case "DUO_SUPPORT":
//assumes bot lane support
role = "S";
console.log(role);
break;
case "SOLO":
//assumes mid or top solo
role = "L";
console.log(role);
break;
case "NONE":
//assumes jungle, check lane
role = "J";
console.log(role);
break;
default
role = "L";
break;
}
switch (role) {
case "L":
aFactor = 1.00; //kills
bFactor = 0.66; //assists
cFactor = 0.75; //deaths
dFactor = 0.80; //cs
eFactor = 0.20; //jungle cs
fFactor = 0.55; //counter jungle cs
gFactor = 0.50; //cc time
break;
case "A":
aFactor = 1.00;
bFactor = 0.10;
cFactor = 1.00;
dFactor = 1.00;
eFactor = 0.20;
fFactor = 0.30;
gFactor = 0.33;
break;
case "S":
aFactor = 0.20;
bFactor = 2.00;
cFactor = 0.33;
dFactor = 0.10;
eFactor = 0.33;
fFactor = 0.55;
gFactor = 2.00;
break;
case "J":
aFactor = 1.00;
bFactor = 1.50;
cFactor = 0.75;
dFactor = 0.33;
eFactor = 1.20;
fFactor = 1.60;
gFactor = 1.00;
break;
}
Обычно принято добавлять код непосредственно к вопросу, чтобы он стоял без посещения стороннего сайта. – spender
уверенная вещь, 1 секунда – Vranvs
Чтобы указать несколько опечаток в вашем коде JSFiddle - 1) Вам не хватает скобок на обеих циклах. 2) В вашем цикле есть 'i> 10' вместо' i <10'. 3) В вашем операторе switch 'default' должен быть' default: '. Надеюсь это поможет. –