登录    关于
马育民老师的博客

马育民的博客

QQ:65242847

JavaScript教程:数组

案例

案例1

一个人最多拿10瓶啤酒,那么如何拿20瓶啤酒?

案例2

一个班级的学生有30人,如何用变量表示这30人的数学成绩?用30个变量吗?

应该使用数组,数组的作用相当于上面的啤酒箱,可以装入30人的数学成绩

int lilei=80;
int hanmeimei=87;
.........
int lucy=85;

数组

数组就是:集合,存储数据,按一定的 顺序排列

定义

方式一(常用)

空数组

var 数组名 = [];

方式二(常用)

定义数组同时赋值元素

var 数组名 = ['李雷',18 , 1.82 , true];

方式三

var 数组名=new Array();

方式四

var 数组名=new Array('李雷',18 , 1.82 , true);

常见操作

索引

相当于 编号 ,数组中的每一个元素,都会有一个编号,从0开始

注意: 索引从0开始

数组的访问

初始化数组后,通过 索引 访问

格式:

数组名[索引]

例子:

查看动态初始化数组的元素值:

var arr = ['李雷',18 , 1.82 , true];
System.out.println(arr[0]);

执行结果为:李雷

数组的修改

通过索引修改

格式:

数组名[索引]=值;

例子:

var arr = [];
arr[0]='李雷';
arr[1]=20;
arr[2]=1.82;
arr[3]=true;
console.log(arr[0]);
console.log(arr[1]);
console.log(arr[2]);
console.log(arr[3]);

数组的长度属性

数组都有长度,而且是固定的,通过 数组名.length获取,int类型。由次可以推断出

数组的最大索引:数组名.length-1

var arr = ['李雷',18 , 1.82 , true];
console.log(arr.length);

数组遍历【重点】

就是将数组中的每个元素获取出来,需要配合 循环语句

var arr = ['李雷',18 , 1.82 , true];

for (int i = 0; i < arr.length; i++) {
    System.out.println(arr[i]);
}

splice() 方法

插入元素

var arr = ['李雷',18 , 1.82 , true];
arr.splice(2, 0, "lucy", "lili")
console.log(arr.toString())

splice() 参数:

  • 第一个参数 2:定义了应添加新元素的位置(拼接)

  • 第二个参数 0:定义应删除多少元素

  • 其余参数:定义要添加的新元素

返回:

  • 包含已删除项的数组

根据索引删除元素

var arr = ['李雷',18 , 1.82 , true];
var arr2=arr.splice(1, 1)
console.log(arr.toString())
console.log(arr2.toString())

其他操作

转换为字符串

var arr = ['李雷',18 , 1.82 , true];
console.log(arr.toString())

将数组元素组合为一个字符串

var arr = ['李雷',18 , 1.82 , true];
console.log(arr.join(','))

切片

从数组中截取一个新的数组

var arr = ['李雷',18 , 1.82 , true];

var arr2=arr.slice(1,3);
console.log(arr2.toString())

slice() 参数:

  • 第1个参数:从该索引处开始截取
  • 第2个参数:截止到该索引处(不包含该元素)。不写此参数表示截取到末尾

返回:

  • 返回截取的数组

根据 值 获取 第一次出现的位置

根据 值 获取 第一次出现的位置(索引)

var arr = ['李雷',18 , 1.82 , true];

var index=arr.indexOf(1.82);
console.log(index)

根据值删除元素

var arr = ['李雷',18 , 1.82 , true];

var index=arr.indexOf(1.82);
arr.splice(index,1)
console.log(arr.toString())

在数组头部插入元素

var arr = ['李雷',18 , 1.82 , true];
arr.unshift('韩梅梅')

在数组末尾添加元素

var arr = ['李雷',18 , 1.82 , true];
arr.push("韩梅梅")

删除首个数组元素

var arr = ['李雷',18 , 1.82 , true];
arr.shift()

删除最后元素

var arr = ['李雷',18 , 1.82 , true];
arr.pop()

合并(连接)数组

var arr = ['李雷',18 , 1.82 , true];
var arr2 = ['韩梅梅',17 , 1.62 , false];
var arr3 = arr.concat(arr2);
console.log(arr3.toString())

特点:

  • 不会更改现有数组。它总是返回一个新数组
  • 可以连接n个数组。arr.concat(arr2,arr3);

原文出处:https://malaoshi.top/show_1IX1HlHVGxrD.html