logo头像

求知若渴,虚心若愚

JavaScript - 数组( Array ) - 数组介绍

数组

数组定义

  • 就是将多个元素(通常是同一类型)按一定顺序排列放到一个集合中,那么这个集合我们就称之为数组。
    • 数组就是一组数据的集合
    • 其表现形式就是内存中的一段连续的内存地址、
    • 数组名称其实就是连续内存地址的首地址

数组特点

  • 数组是一个有序的列表
  • 数组定义时无需指定数据类型,可以在数组中存放任意的数据
  • 数组定义时可以无需指定数组长度

数组创建

直面量创建数组

1
2
3
var arr = [];//创建一个空数组

var arr2 = [1,2,3];//创建一个有三个元素的数组

构造函数创建数组

1
2
3
4
5
var arr1 = new Array();//创建空数组

var arr2 = new Array(10);//创建一个长度为10的数组

var arr3 = new Array(5,4,3,2,1);//创建数组并初始化,添加数组

TIP

  • 如果调用构造函数 Array() 时没有使用参数,那么返回的数组为空,length 字段为 0。
  • 当调用构造函数时只传递给它一个数字参数,该构造函数将返回具有指定个数、元素为 undefined 的数组。

数组操作

length

  • 可设置或返回数组中元素的数目
  • 数组的 length 属性总是比数组中定义的最后一个元素的下标大 1
  • 对于那些具有连续元素,而且以元素 0 开始的常规数组而言,属性 length 声明了数组中的元素的个数。
  • 设置 length 属性可改变数组的大小。
    • 如果设置的值比其当前值小,数组将被截断,其尾部的元素将丢失。
    • 如果设置的值比它的当前值大,数组将增大,新的元素被添加到数组的尾部,它们的值为 undefined。

设置或访问数组元素

1
2
3
4
5
6
7
8
9
10
11
// 格式:数组名[下标]
// 下标就是索引
// 功能:获取数组对应下标的那个值,如果下标不存在,则返回undefined。
var arr = ['tom', 'marry', 'bob'];
arr[0]; // tom
arr[2]; // bob
arr[3]; // undefined,因为数组的最大下标为2,访问3数组越界了,别的编程语言有些会报错


arr[0] = 'xiaofengge';//重新设置第一个元素
arr[0];//xiaofengge 这个时候数据就变了

遍历数组

  • 在JavaScript中,数组的数据类型其实就是对象
  • JavaScript中的For.....in语句可以实现对一个对象的所有属性的遍历
  • 所以我们可以使用for…in语句实现对一个数组的所有元素的遍历
  • 数组中有几个元素,for..in语句就循环执行多少次
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var x  
var arr = new Array()
arr[0] = "hello"
arr[1] = "world"
arr[2] = "!"

for (x in arr) {
console.log(arr[x])
}

// 结果
// hello
// world
// !
  • 可以使用for循环遍历数组
1
2
3
4
var arr = [11,43,665,21,342,54,66]
for(var i = 0; i < arr.length; i++) {
// 数组遍历的固定结构
}

TIP
不同类型的循环

JavaScript 支持不同类型的循环:

  • for - 循环代码块一定的次数
  • for/in - 循环遍历对象的属性
  • while - 当指定的条件为 true 时循环指定的代码块
  • do/while - 同样当指定的条件为 true 时循环指定的代码块
支付宝打赏 微信打赏

赞赏是对我们的肯定!