0

JS:

for(i=this.current.arr.length;i<this.counterLength;i++){
    dosomthing();
    dosomethingelse();
}

コーヒー:

i = @current.arr.length
while i < @counterLength
  dosomthing()
  dosomethingelse()
  i++

私はcoffeescriptが素晴らしいループ構文キャンディーを持っていることを知っていますが、これよりもエレガントな書き方を見つけることはできません。これを行うためのよりコーヒースクリプト的な方法はありますか?

私は知っています:

 for currentArr in current.arr
 //and
 for currentArr, 1 in current.arr

しかし、私は0ではなく@currentLengthで開始する必要があります

4

1 に答える 1

2

演算子は[..]あなたが探しているものです:

start = this.current.arr.length
end = this.counterLength
for [start...end]
    dosomthing()
    dosomethingelse()

start事前に定義する必要はありませんend。コードを少し明確にするために使用しました。startより大きい場合はend、逆方向に進むことに注意してください。

コードではなく[...]を使用したため、実際には演算子が必要です。演算子は最後の要素を除外します。<<=[...]

于 2012-05-23T17:22:44.167 に答える