2015-02-27 2 views
0

Мой CoffeeScript выглядит следующим образом:В CoffeeScript можно ли увеличить цикл for вручную?

for i in [1..3] 
    i++ if i is 1 
    console.log i 

Ожидаемый выход

2 
3 

Сформирован выход

2 
2 
3 

Вопрос заключается в том, что CoffeeScript сохраняет приватную переменную для отслеживания итерации , _i, но если я попытаюсь увеличить этот _i++, то переменная private изменится на _j и постоянно уклоняется от меня.

Итак, как я могу увеличивать цикл вручную с помощью CoffeeScript?

+0

Почему бы не использовать '[2..3]' вместо '[1..3]'? – elmigranto

ответ

2

Вы не можете вручную увеличивать счетную переменную цикла. Вместо этого вам нужно использовать continue, чтобы пропустить одну или несколько итераций.

for i in [1..3] 
    continue if i is 1 
    console.log i 

Вы никогда не должны пытаться получить доступ или изменить CoffeeScript Сгенерируем переменные, это те детали реализации, и вы не можете полагаться на них присутствовать.

+0

Вы также можете использовать 'when i! = 1' в этом конкретном случае:' для i в [1..3], когда i! = 1' –

Смежные вопросы