javascript - 在 Coffeescript 中强制迭代 for 循环

标签 javascript for-loop coffeescript

在一些复杂的情况下,您想手动强制 for 循环转到不同的位置:

for(var i = 0; i < objects.length; i++) {
  var object = objects[i];
  if(object.type == typeThatShouldOnlyDisplayOnce) {
    displayObject();
    i += jumpToValidPosition;
  }
}

这如何在 CoffeeScript 中完成? CoffeeScript 的 for 循环就像

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 方法?

最佳答案

for 循环只是 while 循环的语法糖,因此您可以这样重写它:

i = 0
while i < objects.length
  object = objects[i]
  if object.type == typeThatShouldOnlyDisplayOnce
    displayObject()
    i += jumpToValidPosition
  else
    i++

关于javascript - 在 Coffeescript 中强制迭代 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35303643/

相关文章:

javascript - 将 Google 演示文稿复制到文件夹

javascript - Google Firestore promise

javascript - 如何在 node.js 中记录每个方法调用而不在任何地方添加调试行?

javascript - 这在 Coffeescript 中意味着什么?

javascript - 铁路由器中的多个订阅

javascript - 用react.js类编写的BMI计算器需要在提交按钮上单击两次才能改变一些this.state值

java - For 语句不适用于每个数组元素?

c++ - 对于循环数组迭代,if循环测试索引是否为真/假,错误地评估真

java - 有没有办法在 for 循环中链接列表(或 map )?

javascript - 通过 Javascript 中的映射函数传入 key