JavaScript索引集合
原创索引集合
索引集合是按索引值排序的数据集合,包括数组和类数组结构,如Array对象和TypedArray对象。数组是由名称和索引引用的值构成的有序列表。
在JavaScript中,虽然没有明确的数组数据类型,但我们可以使用预定义的Array对象及其方法来处理数组。Array对象提供了多种操作数组的方法,如连接、反转和排序等,并具有用于确定数组长度的属性。
创建数组
JavaScript提供了多种创建数组的方式:
const arr1 = new Array(element0, element1, /* … ,*/ elementN);
const arr2 = Array(element0, element1, /* … ,*/ elementN);
const arr3 = [element0, element1, /* … ,*/ elementN];
其中,括号语法称为"数组字面量"或"数组初始化式",是最常用的创建数组的方式。
引用数组元素
数组元素可以通过索引来访问,索引从0开始。例如,对于数组myArray = ["Wind", "Rain", "Fire"],第一个元素可以通过myArray[0]来引用。
填充数组
可以通过给数组元素赋值来填充数组,例如:
const emp = [];
emp[0] = "Casey Jones";
emp[1] = "Phil Lesh";
emp[2] = "August West";
也可以在创建数组时直接初始化其元素。
理解length属性
JavaScript数组的length属性是特殊的,它总是比最后一个元素的索引大1。例如:
const cats = [];
cats[30] = ["Dusty"];
console.log(cats.length); // 31
可以通过修改length属性来截断或清空数组。
遍历数组
遍历数组是常见的操作,可以使用for循环或forEach方法:
const colors = ["red", "green", "blue"];
for (let i = 0; i < colors.length; i++) {
console.log(colors[i]);
}
colors.forEach((color) => console.log(color));
数组方法
Array对象提供了丰富的方法来操作数组:
- concat() - 连接两个或多个数组
- join() - 将数组元素连接成字符串
- push() - 在数组末尾添加元素
- pop() - 移除数组最后一个元素
- shift() - 移除数组第一个元素
- unshift() - 在数组开头添加元素
- slice() - 提取数组片段
- splice() - 删除或替换数组元素
- reverse() - 颠倒数组顺序
- sort() - 对数组元素排序
- indexOf() - 查找元素索引
- forEach() - 遍历数组元素
- map() - 创建新数组
- filter() - 过滤数组元素
- find() - 查找匹配元素
- reduce() - 将数组元素减少为单个值
稀疏数组
稀疏数组包含"空槽",这与用undefined填充的槽不同。空槽可以通过多种方式创建,如使用Array构造函数、在数组字面量中使用连续逗号等。
多维数组
JavaScript数组可以嵌套,从而创建多维数组。例如,以下代码创建了一个二维数组:
const a = new Array(4);
for (i = 0; i < 4; i++) {
a[i] = new Array(4);
for (j = 0; j < 4; j++) {
a[i][j] = "[" + i + "," + j + "]";
}
}
使用数组存储其他属性
数组也可以像对象一样使用,存储额外的属性:
const arr = [1, 2, 3];
arr.property = "value";
console.log(arr.property); // "value"
使用类数组对象
一些JavaScript对象,如NodeList或arguments对象,具有类似数组的行为但不共享所有数组方法。可以通过Function.prototype.call()间接调用数组方法:
function printArguments() {
Array.prototype.forEach.call(arguments, (item) => {
console.log(item);
});
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。
上一篇:JavaScript
正则表达式 下一篇:JavaScript
带键的集合
开发学习网



