1
В некоторых сложных ситуациях вы хотите вручную заставляйте цикл для перехода на другую позицию:Насильно итерация цикла в CoffeeScript
for(var i = 0; i < objects.length; i++) {
var object = objects[i];
if(object.type == typeThatShouldOnlyDisplayOnce) {
displayObject();
i += jumpToValidPosition;
}
}
Как это может быть сделано в CoffeeScript? CoffeeScript для петель, как
for i in [0...100]
doSomething()
И глядя на скомпилированный код Javascript, это, кажется, выходит что-то больше похоже на
for (n = i = ref = 0, ref1 = 100; ref <= ref1 ? i < ref1 : i > ref1; n = ref <= ref1 ? ++i : --i) {
Есть ли CoffeeScript способ силой прыгать в другое положение петли?
Вы пробовали переназначения 'i'? –
Да, все еще переходит к следующему значению, а не переназначенному. Кажется, связано с тем фактом, что скомпилированный код использует 'ref', а не' i/n' –
Извините, я не могу ответить на этот вопрос, но обойтись, этот вид мутации итератора очень подвержен ошибкам и, вероятно, должен быть избегать. – Matt