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

但我需要从 @currentLength 而不是 0 开始

4

1 回答 1

2

[..]运算符是您正在寻找的:

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

不需要预先定义startand end,我只是用它来使代码更清晰一点。请注意,如果start大于 then end,那么它将倒退。

实际上您需要[...]运算符,因为您在代码中使用<而不是。运算符排除最后一个元素<=[...]

于 2012-05-23T17:22:44.167 回答