gpt4 book ai didi

javascript - 函数循环问题

转载 作者:搜寻专家 更新时间:2023-11-01 05:05:47 24 4
gpt4 key购买 nike

在处理在 JQuery 上运行的语法荧光笔时,我发现了一个相当奇怪的问题。我创建的一个函数似乎几乎破坏了它所在的任何循环。但是,在循环之外,它工作得很好。

有问题的功能是:

function findQuoted(s)
{
var Quote = 0;
var F = 0;
var L = 0;
var Strings = Array();
for(i = 0;i < s.length;i++)
{
if(s.charAt(i) == '"' && Quote == 0)
{
Quote = 1;
F = i;
}
else if(s.charAt(i) == '"' && Quote == 1)
{
Strings[Strings.length] = s.substring(F, i + 1);
Quote = 0;
}
}
return Strings;
}

http://pastebin.com/2wi4Tnn8

如果这在任何循环中执行,出于某种奇怪的原因,循环就会停止工作,并且只运行一次。

在这个例子中,警告消息在继续程序之前只显示一次。请记住,程序永远不会卡住或无响应,循环只是停止运行。

for(i = 0;i < 5;i++)
{
alert(findQuoted('"Test" this is a test "test" another test "TEST"'));
alert('test');
}

在正常情况下,如果不使用这个函数,这个循环中的所有内容都会执行 6 次。然而,由于该函数存在于循环中,因此该函数中的所有内容仅执行一次。

最佳答案

使用

for(var i = 0;i < 5;i++)

否则,您使用的是您在其他循环中用于迭代的相同变量 i

关于javascript - 函数循环问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17622657/

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