javascript - For 循环循环太多

标签 javascript jquery html for-loop

我正在循环执行一个简单的计算。每次迭代的结果都存储在一个数组中。数组的元素数量正确,但输出的元素数量呈指数级增长。

HTML:

<script type="text/javascript" src="Fibonacci.js"></script> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>   
<script>
(function($) {
    $.fn.writeText = function(content) {
        var contentArray = content,
        current = 0,
        elem = this;
    setInterval(function() {
        if(current < contentArray.length) {
            elem.text(elem.text() + contentArray[current++]);                
            }
        }, 1000);
    };    
})(jQuery); 
</script>
</head>
<body>  
<script>
    document.write(getArray());
$(document).ready(function($){      
    var contentArray = getArray();
    $('#calculations').writeText(contentArray);
}); 
</script>
<h3>Fibonacci Sequence:</h3>
<p id='calculations'></p>   

外部JS:

var result;
var x = 0;
var y = 1;
var resultArray = [x,y];

function FibonacciCalculation(){
    for(var i = 2; i < 5; i++){     
        result = x + y;
        x = y;
        y = result;
        resultArray.push(result);
    }
}

function getArray(){
    FibonacciCalculation();
    return resultArray;
}

window.onload = function(){
    FibonacciCalculation();
};

最佳答案

每次运行斐波那契计算函数时,您都需要重置resultArray:

function FibonacciCalculation() {
   resultArray = [x, y]
   // ...

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

相关文章:

javascript - FireFox 卸载前的问题

javascript - 如何在 javascript 中使用从 Django 传递的上下文变量?已经改成Json类型了

javascript - 替换 jQuery 中与 RegExp 匹配的内容

javascript - 在 javascript 和 jquery 中使用 <- 和 -> 键进行分页

html - 有没有办法让 Chris Coyier 的响应式 "list"表具有动态内容?

html - 段落两侧的对 Angular 虚线图案

javascript - 我可以在一个 anchor 标记中同时使用 onload 和 onclick 事件吗?

将 Chrome 更新到 46 后,Javascript 重定向不再起作用

javascript - 我的表单未将参数存储在模型中

html - CSS 样式 : selector for facebook markup