数组是一种非常常见且重要的数据结构,用于存储和组织多个相同类型的数据元素。数组提供了一个有序的、索引化的集合,其中每个元素都可以通过其位置(索引)来访问。数组中的元素按照它们在数组中的顺序存储,每个元素都有一个唯一的索引。数组的元素通过索引进行访问,索引通常从0开始递增,表示元素在数组中的位置。本文主要介绍JavaScript(JS) 中的数组。

1、JavaScript(JS) 数组

JavaScript(JS)中的数组是一种数据结构,用于存储多个值。它可以包含各种类型的数据,包括数字、字符串、对象、函数等。JavaScript 数组是有序的,每个元素都有一个索引,索引从0开始,依次递增。

JavaScript 中声明和创建数组有多种方式,以下是常见的几种方法:

1)使用数组字面量(Array Literal)

let langs = ['C#', 'Java', 'Python'];
console.log(langs);

2)使用 new 关键字和 Array 构造函数

let numbers = new Array(1, 2, 3, 4, 5);
console.log(numbers);

3)使用 new Array() 构造函数(指定数组长度)

let langs = new Array(3); // 创建一个长度为3的数组
colors[0] = 'C';
colors[1] = 'Java';
colors[2] = 'Python';

4)使用 Array.of() 方法

let langs = Array.of('C#', 'Java', 'Python');
console.log(langs);

5)使用展开运算符 ...

let oldArray = ['C#', 'Java', 'Python'];
let newArray = [...oldArray];
console.log(newArray);

2、访问数组中元素

数组的索引从0开始,可以通过数组索引来访问数组元素。

var langs = ['C#', 'Java', 'Python'];
console.log(langs[0]);  // 输出 "C#"

1)遍历数组

通过循环遍历访问数据中每一个元素。

var langs = ['C#', 'Java', 'Python'];
for (var i = 0; i < langs.length; i++) {
    console.log(langs[i]);
}
//或者
for (var idx in langs) {
    console.log(langs[idx]);
}

2)使用forEach方法

var langs = ['C#', 'Java', 'Python'];
langs.forEach(function(item) {
    console.log(item);
});

3、修改数组中元素

可以使用多种方法修改数组中的元素。如下,

1)通过索引直接修改

var langs = ['C#', 'Java', 'Python'];
langs[0] = "C";
console.log(langs);  // 输出 ['C', 'Java', 'Python']

2)使用push()和pop()方法

push()方法在数组的末尾添加一个或多个元素,而pop()方法从数组的末尾删除一个元素。

var langs = ['C#', 'Java', 'Python'];
langs.push("JavaScript");  // 添加到数组末尾
console.log(langs); // 输出 ['C#', 'Java', 'Python', 'JavaScript' ]

langs.pop(); // 移除数组的最后一个元素
console.log(langs); // 输出 ['C#', 'Java', 'Python']

3)使用unshift()和shift()方法

unshift()方法在数组的开头添加一个或多个元素,而shift()方法从数组的开头删除一个元素。

var langs = ['C#', 'Java', 'Python'];
langs.unshift("C++");  // 添加到数组开头
console.log(langs); // 输出 ["C++", "C#", "Java", "Python"]

langs.shift(); // 移除数组的第一个元素
console.log(langs); // 输出 ["C#", "Java", "Python"]

4)使用splice()方法

splice()方法是一个非常强大的方法,可以用于从数组中添加、删除或替换元素。

var langs = ['C#', 'Java', 'Python'];
langs.splice(1, 1, "C++", "C");  // 从索引1开始,删除1个元素,并添加"C++"和"C"
console.log(langs); // 输出 [ 'C#', 'C++', 'C', 'Python' ]

5)使用map()方法

map()方法返回一个新数组,数组中的元素是原始数组中每个元素调用函数后的结果。

var numbers = [1, 2, 3, 4];
var val = numbers.map(function(num) {
    return num * 2;
});
console.log(val);  // 输出 [2, 4, 6, 8]

6)使用fill()方法

修改原数组,用一个固定值填充一个或多个数组元素。

var numbers = [1, 2, 3, 4];
numbers.fill(0, 1, 3);
console.log(numbers);  // 输出 [1, 0, 0, 4]

4、Array 方法

参考文档JavaScript(JS) Array 对象

推荐文档