Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击按钮获取前12个斐波那契数的和_Javascript_Fibonacci - Fatal编程技术网

Javascript 单击按钮获取前12个斐波那契数的和

Javascript 单击按钮获取前12个斐波那契数的和,javascript,fibonacci,Javascript,Fibonacci,我想获得并添加前12个偶数斐波那契数,并在单击按钮时将其显示在我的页面上。现在我的代码得到并添加偶数。如何将其限制为前12个偶数 先谢谢你 //首先我们得到按钮的HTML var getFibSum=document.getElementById(“sumFib”); //然后,我们为单击按钮时设置事件处理程序 getFibSum.onclick=函数(){ document.getElementById(“sumFibResult”).innerHTML=twevenFibonaccisum(

我想获得并添加前12个偶数斐波那契数,并在单击按钮时将其显示在我的页面上。现在我的代码得到并添加偶数。如何将其限制为前12个偶数

先谢谢你

//首先我们得到按钮的HTML
var getFibSum=document.getElementById(“sumFib”);
//然后,我们为单击按钮时设置事件处理程序
getFibSum.onclick=函数(){
document.getElementById(“sumFibResult”).innerHTML=twevenFibonaccisum();
}
/*
*TwelveenFibonaccisum-计算前12个偶数fibonacci数的和,0,1是序列的前两个数
*/
函数TevenFibonaccisum(){
///在这里编写代码
//生成斐波那契数的循环。
console.clear();
var fib=[0,1];//初始化数组
var总和=0;

对于(var i=2;i在外部作用域中添加一个变量,该变量在每次调用函数时递增。当该变量等于12时返回

    for (var i= 2; i <= 50; i++) {
        fib[i] = fib[i-1] + fib[i-2];    
        var integer = fib[i];
        if(integer  % 2 == 0) {
             // console.log("my current even fib is " + fib[i]);
             var sumFibResult = sum += fib[i];
            console.log("my current even fib added to sum " + sumFibResult);
            timesIncremented++;
        }
        // Loop until we have 12 even numbers
        if(timesIncremented >= 12) {
            return;
        }
    }
for(变量i=2;i=12){
回来
}
}

sumFibResult
需要在函数顶部声明,而不是在内部循环中声明。要么声明,要么返回
sum
。放置var sumFibResult没有改变任何东西。需要返回html的是sumFebResult。但无论如何,谢谢Austin。我已经更新了我的代码。我想获取并添加前12个偶数。我得到偶数,然后再加上它们。在加上前12个偶数后,我该如何切断它?这就是我一直在努力解决的问题。我一直在尝试这样做,我不断地让自己陷入无限循环,并使我的计算机崩溃。我是一个新手。@user3120646编辑为给你一个例子。我没有测试你的代码,但这是一个例子总体思路。是的!我知道这是一个简单的解决方案。我一直在尝试合并do等等。我只是一直把报税表放在错误的地方!非常感谢!没问题。如果你满意,请接受答案。是的,我满意。我如何接受它?我点击复选标记并将其变为绿色;这意味着接受吗?我很高兴这里也是新的。:)谢谢。
    for (var i= 2; i <= 50; i++) {
        fib[i] = fib[i-1] + fib[i-2];    
        var integer = fib[i];
        if(integer  % 2 == 0) {
             // console.log("my current even fib is " + fib[i]);
             var sumFibResult = sum += fib[i];
            console.log("my current even fib added to sum " + sumFibResult);
            timesIncremented++;
        }
        // Loop until we have 12 even numbers
        if(timesIncremented >= 12) {
            return;
        }
    }