Как увеличить переменную на 1, чтобы ограничить, а затем перемотать и повторить приращение - jQuery

0

У меня есть переменная, содержащая число, например 1. Я хочу, чтобы она увеличивалась до 10. После достижения 10, она должна затем уменьшаться до 1. Затем она должна увеличиваться. Я сделал такое решение;

var a = 1;
var i;
for(i=0;i<20;i++){
  //do something with var
  a++;
  if(a == 10){
    a = 1;
  }
}

Есть ли более простой или лучший метод для того же самого?

  • 0
    Это создаст бесконечный цикл ... Вы что-то оживляете?
  • 0
    Этот код недействителен. var является зарезервированным словом и не может использоваться в качестве идентификатора. Пожалуйста, не забудьте опубликовать правильный код - и, надеюсь, код, который показывает объясненное поведение.
Показать ещё 2 комментария
Теги:

4 ответа

2
Лучший ответ
for(i=0,a=1;i<20;i++,a++){
  //do something with var
  if(a==10){
    a = 1;
  }
}
3

Использование операторов modulo (%) весьма полезно в этих случаях.

var x = 1;

//loop

//process

//increment
x = (x % 10) + 1; //1
  • 0
    @ user2864740 Да, я так привык иметь индекс на основе 0, что не думал об этом. Исправлен пример.
1

Если вы хотите, чтобы она вернулась к 1 вместо 0, используйте оператор mod до приращения.

var a = 1;
for (i = 0; i < 20; ++i) 
{ 
  console.log(a); 
  a = (a % 10) + 1; 
}
0
for(i=0,a=1; i<20; i++,a++){
  //do something with var
  a==10 ? a=1 : null ;
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню