一、数组的基本概念
定义数组可以理解为一组按一定顺序排列、且可通过下标(索引)访问的变量集合。javascript的数组是一个可存储多个值的变量,在javascript中,数组是使用数组字面量(Array literals)、数组构造器(Array constructor)或数组原型方法来创建。
// 以数组字面量方式创建数组
let arr1 = [1, 2, 3, 4, 5];
// 以数组构造器方式创建数组
let arr2 = new Array(1, 2, 3, 4, 5);
// 以push()方法来给数组增加元素
let arr3 = [];
arr3.push(1, 2, 3, 4, 5);
二、数组的属性和方法
javascript中的数组有一些内置的属性和方法,我们可以利用这些来对数组进行增、删、改、查等操作。
1. 属性
① length(长度属性):返回数组中元素的个数
let arr = [1, 2, 3, 4, 5];
console.log(arr.length); // 5
2. 方法
1. 增加元素
① push(value1, value2, …, valuen):向数组末尾添加一个或多个元素,并返回新的长度
let arr = [1, 2, 3];
arr.push(4, 5);
console.log(arr); // [1, 2, 3, 4, 5]
② unshift(value1, value2, …, valuen):向数组开头添加一个或多个元素,并返回新的长度
let arr = [1, 2, 3];
arr.unshift(4, 5);
console.log(arr); // [4, 5, 1, 2, 3]
2. 删除元素
① pop():删除并返回数组的最后一个元素
let arr = [1, 2, 3];
arr.pop();
console.log(arr); // [1, 2]
② shift():删除并返回数组的第一个元素
let arr = [1, 2, 3];
arr.shift();
console.log(arr); // [2, 3]
3. 查找元素
① indexOf(searchElement [, fromIndex]):返回元素在数组中第一次出现的索引值,如果没有找到则返回 -1
let arr = [1, 2, 3];
console.log(arr.indexOf(2)); // 1
② lastIndexOf(searchElement [, fromIndex]):返回元素在数组中最后一次出现的索引值,如果没有找到则返回 -1
let arr = [1, 2, 3, 2];
console.log(arr.lastIndexOf(2)); // 3
三、常用操作
1. 遍历数组
我们可以使用for循环或forEach()方法遍历数组的每一个元素
① 使用for循环来遍历数组
let arr = [1, 2, 3];
for(let i=0; i < arr.length; i++){
console.log(arr[i]);
}
② 使用forEach()方法遍历数组
let arr = [1, 2, 3];
arr.forEach(function(value, index, array){
console.log(value);
});
2. 数组的排序
javascript提供了sort()方法,可以对数组进行排序,sort()方法可以按升序或降序排序,并且可以根据自定义函数进行排序。
① 升序排序
let arr = [3,2,1];
arr.sort(function(a,b){ return a-b; });
console.log(arr); // [1, 2, 3]
② 降序排序
let arr = [1,2,3];
arr.sort(function(a,b){ return b-a; });
console.log(arr); // [3, 2, 1]
3. 数组的拼接
javascript提供了concat()方法,可以将两个或多个数组合并为一个数组。
let arr1 = [1,2,3];
let arr2 = [4,5,6];
let arr3 = arr1.concat(arr2);
console.log(arr3); // [1, 2, 3, 4, 5, 6]
四、数组的应用场景
1. 存储数据
数组可以作为一种数据结构,用来存储一组数据,方便索引和查找。
let arr = [
{name: '张三', age: 18},
{name: '李四', age: 20},
{name: '王五', age: 25}
];
console.log(arr[0].name); // 张三
2. 处理数据
数组可以作为一种用于处理数据的工具,在处理大量数据的时候,使用数组可以使代码更加简洁高效。
let arr = [1,2,3,4,5];
let sum = 0;
for(let i=0; i < arr.length; i++){
sum += arr[i];
}
console.log(sum); // 15
3. 模拟队列和栈的数据结构
使用数组可以模拟队列和栈等数据结构,方便增加、删除元素。
// 模拟队列
let queue = [1,2,3];
queue.push(4);
queue.shift();
console.log(queue); // [2, 3, 4]
// 模拟栈
let stack = [1,2,3];
stack.push(4);
stack.pop();
console.log(stack); // [1, 2, 3]
五、总结
以上是javascript定义数组的相关知识,通过文章的阐述,我们可以了解到javascript中的数组是一种可存储多个值的变量,可以使用多种方式来创建和操作,可以将数组应用于存储数据、处理数据、模拟队列和栈等多种场景。
原创文章,作者:BUAD,如若转载,请注明出处:https://www.506064.com/n/133926.html