2
for char, index in 'some string'
if condition
index += 2
我有一個for循環,我在循環一個字符串,當滿足某些條件時,我想跳過當前一個字符後的一些字符數。在JavaScript中,我會做index += 2
,它會工作,但由於某些未知原因,CoffeeScript編譯器將此代碼編譯爲JS for
循環,該循環使用_i
變量來保留實際索引並僅將當前值分配給index
,這意味着通過改變index
的值,我並沒有真的改變指針。CoffeeScript中循環指針的增量
我知道我可以使用while
循環做到這一點,但我一直在想,必須有一種方法來使用for
循環來做到這一點。我是對的,還是應該堅持while
循環?
以下是編譯的JS代碼:
var char, index, _i, _len, _ref;
_ref = 'some string';
for (index = _i = 0, _len = _ref.length; _i < _len; index = ++_i) {
char = _ref[index];
if (condition) {
index += 2;
}
}