数组是一个又顺序,有长度的数组集合

定义数组

var arr = [];

  1. // 5个人的成绩为: 91,88,72,45,63
  2. // 先定义一个数组
  3. var arr = [];
  4. console.log(arr); // 输出 [] 这是一个没有数据在里面的数组,称为空数组

数组存值

数组中的数据使用索引管理。索引就是序号,只不过数组中的数据从0开始

  1. //把成绩存储到数组中
  2. var arr = [9188724563]
  3. arr[0] = 91;
  4. arr[1] = 88;
  5. arr[2] = 72;
  6. arr[3] = 45;
  7. arr[4] = 63;
  8. console.log(arr); // 输出 [91,88,72,45,63] 就是一个数据集合

但是这个方式是比较麻烦的,我们如果一开始就知道数组了,可以直接使用一个简单的语法存储数据

  1. var arr = [91,88,72,45,63];
  2. console.log(arr); // 输出的结果是一样的

数组取值(数组索引)

把数据存储在数组里面,是为了将来能使用的,所以要从里面把数据取出来。数据取值同样使用索引取。

  1. console.log(arr[0]);
  2. var sum = arr[0] + arr[1] + arr[2] + arr[3] + arr[4];
  3. console.log(sum); // 输出370

遍历数组

我们在求成绩总和的时候,一个一个地把数组里面的数组取出来了,从索引 0 到最后一个索引,里面有很多重复的代码,我们其实可以使用循环实现。

  1. // 最初的写法
  2. var sum = arr[0] + arr[1] + arr[2] + arr[3] + arr[4];
  3. // 转换成-------------------------------------------------------------------------
  4. var sum = 0;
  5. sum += arr[0];
  6. sum += arr[1];
  7. sum += arr[2];
  8. sum += arr[3];
  9. sum += arr[4];
  10. //再转换成------------------------------------------------------------------------
  11. var sum = 0;
  12. var i = 0;
  13. sum += arr[i];
  14. i++;
  15. sum += [i];
  16. i++;
  17. // 直到i == 4 结束
  18. 写成循环遍历-------------------------------------------------------------------------
  19. var sum = 0;
  20. for(var i = 0; i <= 4; i++){
  21. sum += arr[i];
  22. }
  23. console.log(sum); // 输出 370,和我们一个一个相加是一样的

使用循环来遍历数组,当数组中的数据比较多的时候,会比较方便。

数组长度

数组长度:就是数组中数据的个数
console.log(arr.length); // 数组.length 就是数组的长度
如果数组的长度是5,索引的最后一个就是4,我们发现最大索引总是比长度少 1

  1. 如果数组的长度是5,索引的最后一个就是4,我们发现最大索引总是比长度少 1
  2. for(var i = 0; i <= arr.lensgth - 1; i++){
  3. console.log(arr[i]);
  4. }
  5. // 简化一下
  6. // 把 <= 的 = 号 去掉,会使循环的次数少一次,我们把上限次数+1,就变成了 i < arr.length - 1 + 1 ,最终:
  7. for(var i = 0; i < arr.lensgth; i++){
  8. console.log(arr[i]);
  9. }