Задать вопрос

Как реализовать использование массива как аргумента в switch?

Есть некая конструкция, из которой получаем массив. В случае, если будет нажата кнопка с соответствующим массиву свойством, будет применен определенный case. Вопрос: как правильно использовать массив в switchпри передаче этого switchчерез функцию в addEeventListener'е? И возможно ли вообще?
var operArr = [];
for (var j = 0; j < buttonsArr.length; j++){
  var oper = buttonsArr[j].innerHTML;
  if (oper == 'CE' || oper == 'C' || oper == '⌫' || oper == '÷' || oper == '✕' || oper == '-' || oper == '+' || oper == '=') {
    buttonsArr[j].addEventListener('click', mathOperations);
    operArr.push(oper);
  }
}


function mathOperations(operArr) {
  //here is the click
  // on each click get value of arr[i] and return it to operator
  // 
  switch (operArr) {
    case operArr[0]:
      console.log('click on CE');
      break;
    case [1]: //
      console.log('click on C');
      break;
    case '2': //
      console.log('click on correct');
      break;
    case '3': //
      console.log('click on devide');
      break;
    case 4: //
      console.log('click on x');
      break;
    case 5: //
      console.log('click on -');
      break;
    case 6: //
      console.log('click on +');
      break;
    case 7: //
      console.log('click on =');
      break;
  }
}
  • Вопрос задан
  • 774 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Нет, это невозможно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы