【20】JavaScript 数组

1 数组

1.1 什么是数组

数组是值的有序集合,其中每个值(元素)都有一个位置(索引),数组的元素可以是任何类型,数组的长度=数组元素个数。

1.2 创建数组的方式

① 直接量方式

var 数组名 = [];

② Array函数方式

var 数组名 = Array(元素1, 元素2, ...);
var 数组名 = Array(10); //创建一个长度为10的数组

注: Array 如果只有一个参数且该参数是number类型,会被认为是指定数组的长度

③ Array构造函数方式

var 数组名 = new Array(元素1, 元素2, ...);
var 数组名 = new Array(10); //创建一个长度为10的数组                   

注: Array 构造函数方式和 Array 函数方式,规则都是一样的。

1.3 读写数组元素

数组名[元素索引]
  • 用于给存在的元素赋值:修改其值;给不存在的元素赋值:将其添加至数组。
  • 读取数组中不存在的元素,将返回 undefined

1.4 稀疏数组

数组中存在没有值的元素。产生原因:① 用不连续的索引给元素赋值;② 将数组长度改为大于之前的长度。应尽量避免稀疏数组。

1.5 数组的遍历

① 使用循环遍历

//推荐使用
for (var i = 0; i < arr.length; i++) {
    arr[i];// 获取到数组的元素
}

② 使用for in结构遍历

//for in 遍历针对所有对象类型的数据,不只是针对数组
for (var i in arr) {
    arr[i];// 获取到数组的元素
}

1.6 数组元素的添加和删除

① 添加元素

  1. 利用数组的 length 在数组最后添加元素

    数组名[数组名.length] = 新元素的值;
    
  2. 使用 push() 方法在数组最后添加一个或多个元素

    数组名.push(新元素的值);
    数组名.push(新元素1的值, 新元素2的值, ...);
    
  3. 使用 unshift() 方法在数组前面添加一个或多个元素

    数组名.unshift(新元素的值);
    数组名.unshift(新元素1的值, 新元素2的值, ...);
    
  4. 使用 splice()在指定位置插入一个或多个元素

    数组名.splice(索引, 0, 新元素的值);//0 表示只添加不删除
    数组名.splice(索引, 0, 新元素1的值,新元素2的值, ...);
    

② 删除元素

  1. 通过修改length删除数组最后 n 个元素

    数组名.length -= n;
    
  2. 使用pop()方法删除数组最后一个元素

数组名.pop();//一次只能删除一个元素,如果需要删除多个,则需调用多次
  1. 使用shift()方法删除数组第一个元素
数组名.shift();//一次只能删除一个元素,如果需要删除多个,则需调用多次
  1. 使用 splice() 删除指定位置指定数量的元素

    数组名.splice(index, n); // 从索引是 index 的元素开始删除 n 个元素
    

1.7 多维数组

数组的元素仍然是数组。

1.8 字符串的数组特性

  • 字符串具有一些数组特性:
    ① 字符串中的字符也具有索引,通过索引可以读取字符
    ② 字符串有length,可以获取字符串长度(字符个数)
    ③ 可以使用循环遍历字符串中所有的字符

  • 字符串只是具备一部分数组特性,不是全部
    ① 无法通过索引修改字符
    ② 字符串的 length 也无法修改

  • Like-Array 类数组或者伪数组
    字符串类似于是由字符组成的数组,具有数组的一部分特性
    这样数据就被认为是伪数组

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容