gpt4 book ai didi

javascript - 为什么 coffescript 为循环 : "menu i + 1, dish for dish, i in courses" 产生一个额外的参数

转载 作者:行者123 更新时间:2023-11-30 12:48:07 24 4
gpt4 key购买 nike

menu i + 1, dish for dish, i in courses

这是 coffeescript 主页“循环和理解”部分的一行示例代码。它将产生如下主页上也提供的内容:

for (i = _j = 0, _len1 = courses.length; _j < _len1; i = ++_j) {
dish = courses[i];
menu(i + 1, dish);
}

变量 _j 不是必需的,所以下面的代码也可以:

for (i = 0, _len1 = courses.length; i < _len1; i++) {
dish = courses[i];
menu(i + 1, dish);
}

为什么会产生_j?我哪里错了吗?

最佳答案

Why _j is produced?

它允许您篡改循环体中的 i 变量,并在每次迭代后将其重置为正确的 _j 值。 CoffeeScript 不会在您不这样做时识别,因此即使没有必要也不能省略它。

Am I wrong somewhere?

没有。只是不要关心任何下划线前缀的变量。

关于javascript - 为什么 coffescript 为循环 : "menu i + 1, dish for dish, i in courses" 产生一个额外的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21875526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com