javascript中8个单词后出现超长循环



好的,所以我有这段代码,需要很长时间来编译。当它进入循环时,它就会中断。我怎么能解决这个问题??

http://jsfiddle.net/HTzUt/2/

提前感谢。

for (var i = 0; i < splitAT.length; i++)
{
    if ( splitAT[i] !== prev )
    {
        splitAT.push(splitAT[i]);
        wordCount.push(1);
    } 
    else 
    {
        wordCount[wordCount.length-1]++;
    }
    prev = splitAT[i];
 }
return [splitAT, wordCount];

document.write('[' + result[0] + ']<br>[' + result[1] + ']') 
for (var i = 0; i < splitAT.length; i++)
{
    if ( splitAT[i] !== prev )
    {
        splitAT.push(splitAT[i]);
...

你正在(潜在地)增加你要迭代的数组的长度。push将向数组中添加一个额外的项并增加长度。这将导致循环运行很长时间,或者可能永远运行,这取决于数据的结构

相关内容

  • 没有找到相关文章

最新更新