创建和初始化数组

时间:2017-07-09 20:57:03

标签: javascript arrays initialization

我正在学习Javascript数组。我理解大部分代码,除了第4行。你能解释一下第4行的代码是什么,以及它是如何输出的。

var fibonacci = []; //{1}
fibonacci[1] = 1; //{2}
fibonacci[2] = 1; //{3}

for(var i = 3; i < 20; i++){
    fibonacci[i] = fibonacci[i-1] + fibonacci[i-2]; ////{4}
}

for(var i = 1; i<fibonacci.length; i++){ //{5}
    console.log(fibonacci[i]);           //{6}
}

1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 谢谢。

2 个答案:

答案 0 :(得分:0)

第2行&amp; 3你设置了第1项和第1项的值2.由于斐波纳契是之前两个值的总和,因此第4行只是将每个元素之前的两个值相加,从3到19。

答案 1 :(得分:0)

它的斐波那契序列。这个怎么运作?前两个之后的每个数字都是前两个数字的总和,这就是为什么你必须初始化前两个术语

fibonacci[1] = 1; 
fibonacci[2] = 1;

在第1行上创建数组,并在初始化前面的两个术语之后,从第三个索引var i = 3开始,用序列的所有术语填充数组fibonacci。怎么样?它将前两个术语的总和分配给当前术语。

ps:在javascript数组中从索引0开始