Компилятор всегда прав

Было 3 часа ночи я смотрел на этот код и не мог понять почему же он не работает.
.
PS:~ Функция обрабатывает анимацию выподающего меню где i является указателем на элемент на котором произошло события а функция является слушателем этого события. Эта упращенная версия кода (псевдокод) что бы легче было понять.
------------------------------
function animation ()
{
if (i == 0) {
element.style..... ;
i = 1;
}
if (i == 1) {
element.style..... ;
i = 2;
}
if (i == 2) {
element.style..... ;
i = 0;
}
}
----------------------------------
Только потом на следующее утро я понел что как только первый if срабатывает код идёт дальше по всем if и выполняет их все. И мне нужно было либо заменить второй и третий if на else if либо в каждом if написать return; что бы функция прекращала работу но я как дебил смотрел на эти 3 строчки не понимая что здесь происходит и думал эх чёртов JavaScript опять не работает нифига... А оказывается это мозги мои не работали нифига в тот момент. А мораль тут такова компилятор всегда прав а вы нет.

Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий

Афтор, почему ты сначала не мог понЯть а 3 часа ночи, а потом ты понЕл?

раскрыть ветку (4)
Автор поста оценил этот комментарий

шли вторые сутки без сна.. на утро там по прежнему понЕл, а у вас как с грамматикой в аналогичном состоянии?

Автор поста оценил этот комментарий
Блин, вот когда я это писал, совсем не думал о грамматике.
раскрыть ветку (2)
DELETED
Автор поста оценил этот комментарий
Вопрос, зачем вы это писали?
раскрыть ветку (1)
Автор поста оценил этот комментарий
Не знаю, просто захотелось поделится этим с людьми
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку