做人不能总不发言,写段JS让大家批判,斐波那契函数的另类实现.

function fib(){
    var x = 0,fib1 = 1,fib2 = 1;
    return function(){
        var result = 0;
        if(x==0||x==1){
            result = 1;
        }else{
            result = fib1 + fib2;
            fib1 = fib2;
            fib2 = result;
        }
        x++;
        return result;
    }
}

var f1 = fib();
var f2 = fib()
for(var i=0;i<10;i++){
    console.log(f1());
}
for(var i=0;i<10;i++){
    console.log(f2());
}

这个的特点就是能够按需给出fib列表.比如说需要前10个fib数列.

posted @ 2013-02-05 10:13  ~洛书~  阅读(217)  评论(0编辑  收藏  举报