【发布时间】:2012-08-14 19:52:42
【问题描述】:
我是 CoffeeScript 的新手,对此非常兴奋。我做了一些基本的循环here。现在,CoffeeScript 正在为 每个 循环定义一个循环变量,如下所示:
var food, _i, _j, _len, _len1;
for (_i = 0, _len = fruits.length; _i < _len; _i++) {
food = fruits[_i];
console.log(food);
}
for (_j = 0, _len1 = vegetables.length; _j < _len1; _j++) {
food = vegetables[_j];
console.log(food);
}
我曾经这样编写循环代码:
for(var i = 0; i < fruits.length; i++) {
console.log(fruits[i]);
}
for(var i = 0; i < vegetables.length; i++) {
console.log(vegetables[i]);
}
i 是我的 every 循环的循环变量(不包括嵌套循环)。现在我了解到,您应该始终在定义变量之前声明它。所以我改变了我的编码习惯:
var i;
for(i = 0; i < fruits.length; i++) {
console.log(fruits[i]);
}
for(i = 0; i < vegetables.length; i++) {
console.log(vegetables[i]);
}
只要我在同一个范围内,我就没有发现任何问题,但编译后的 CoffeeScript 代码让我感到疑惑。
为什么 CoffeeScript 会为 每个 循环使用不同的变量?
【问题讨论】:
标签: javascript loops coffeescript