Как уже объяснено, opt = opt++
в основном устанавливает его в текущее значение.opt++
будет делать то, что вы хотите.
Однако я бы порекомендовал избавиться от оператора switch, так как вы можете добиться точно такого же результата с этим ...
var opt = 0;
var arr = ['easy','medium','high'];
function difficulty(){
console.log(arr[opt]);
document.getElementById("diffArr").innerHTML = arr[opt];
opt = ++opt % arr.length;
}
// just run it 10 times to see the result.
for (var i = 0; i < 10; i++) {
difficulty();
}
<div id="diffArr"></div>
Короче говоря, для этого задается вариант opt + 1 с этим ..
opt = ++opt
, а затем используется оператор модулякоторый возвращает остаток после деления вашего числа на другое число, в данном случае это длина массива.
opt = ++opt % arr.length;
Это означает, что вы можете добавлять вещи в массив или удалять их, и код все равно будетработайте по своему усмотрению, без необходимости что-либо изменять.