gpt4 book ai didi

javascript - CoffeeScript 中循环指针的增量

转载 作者:行者123 更新时间:2023-12-03 16:31:36 24 4
gpt4 key购买 nike

for char, index in 'some string'
if condition
index += 2

我有一个 for 循环,我在其中循环一个字符串,当满足特定条件时,我想跳过当前字符之后的一些字符。在 JavaScript 中,我会执行 index += 2 并且它会起作用,但是由于某些未知原因,CoffeeScript 编译器将这段代码编译成 JS for 循环,它使用 _i 变量来保持真正的索引并且只将当前值赋给 index,这意味着通过改变 index 的值,我并没有真正改变指针。

我知道我可以使用 while 循环来做到这一点,但我一直认为必须有一种方法可以使用 for 循环来做到这一点。我是对的,还是应该坚持 while 循环?

编译后的JS代码如下:

var char, index, _i, _len, _ref;

_ref = 'some string';
for (index = _i = 0, _len = _ref.length; _i < _len; index = ++_i) {
char = _ref[index];
if (condition) {
index += 2;
}
}

最佳答案

看看:CoffeeScript for loop get iterator var

您不能更改 CoffeeScript 中 for 循环的实际索引,AFAIK。您必须改用 while 循环。

关于javascript - CoffeeScript 中循环指针的增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29133027/

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