当前位置:首页 > JavaScript

js 数组实现

2026-01-31 18:20:49JavaScript

数组的基本概念

在JavaScript中,数组是一种用于存储多个值的有序集合。数组中的每个值称为元素,每个元素在数组中有一个位置,称为索引。数组的索引从0开始,依次递增。

创建数组

数组可以通过数组字面量或Array构造函数创建。

// 使用数组字面量
const arr1 = [1, 2, 3, 4, 5];

// 使用Array构造函数
const arr2 = new Array(1, 2, 3, 4, 5);

// 创建空数组
const arr3 = [];
const arr4 = new Array();

访问数组元素

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

const arr = ['a', 'b', 'c', 'd'];
console.log(arr[0]); // 输出 'a'
console.log(arr[2]); // 输出 'c'

修改数组元素

通过索引直接修改数组元素的值。

const arr = [1, 2, 3];
arr[1] = 4;
console.log(arr); // 输出 [1, 4, 3]

数组的常用方法

JavaScript提供了丰富的数组方法,用于操作和处理数组。

添加和删除元素

const arr = [1, 2, 3];

// 在末尾添加元素
arr.push(4); // arr变为 [1, 2, 3, 4]

// 删除末尾元素
arr.pop(); // arr变为 [1, 2, 3]

// 在开头添加元素
arr.unshift(0); // arr变为 [0, 1, 2, 3]

// 删除开头元素
arr.shift(); // arr变为 [1, 2, 3]

合并数组

const arr1 = [1, 2];
const arr2 = [3, 4];
const combined = arr1.concat(arr2); // [1, 2, 3, 4]

截取数组

const arr = [1, 2, 3, 4, 5];
const sliced = arr.slice(1, 3); // [2, 3]

查找元素

const arr = [1, 2, 3, 4, 5];
const index = arr.indexOf(3); // 2
const exists = arr.includes(3); // true

遍历数组

const arr = [1, 2, 3];

// 使用forEach
arr.forEach(item => console.log(item));

// 使用map
const doubled = arr.map(item => item * 2); // [2, 4, 6]

// 使用filter
const filtered = arr.filter(item => item > 1); // [2, 3]

// 使用reduce
const sum = arr.reduce((acc, item) => acc + item, 0); // 6

多维数组

JavaScript中的数组可以嵌套,形成多维数组。

const matrix = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

console.log(matrix[1][2]); // 输出 6

数组的展开与解构

ES6引入了展开运算符和解构赋值,便于操作数组。

// 展开运算符
const arr1 = [1, 2, 3];
const arr2 = [...arr1, 4, 5]; // [1, 2, 3, 4, 5]

// 解构赋值
const [first, second, ...rest] = arr1;
console.log(first); // 1
console.log(second); // 2
console.log(rest); // [3]

数组的排序与反转

const arr = [3, 1, 4, 2, 5];

// 排序
arr.sort(); // [1, 2, 3, 4, 5]

// 反转
arr.reverse(); // [5, 4, 3, 2, 1]

数组的类型检查

使用Array.isArray方法检查一个变量是否为数组。

js 数组实现

const arr = [1, 2, 3];
console.log(Array.isArray(arr)); // true
console.log(Array.isArray('not an array')); // false

标签: 数组js
分享给朋友:

相关文章

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以直…

js实现图片上传

js实现图片上传

图片上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现图片上传功能。HTML部分需要创建一个文件选择输入框和一个用于…

js实现图表

js实现图表

在JavaScript中实现图表通常使用流行的图表库,以下是几种常见的方法和工具: 使用Chart.js Chart.js是一个简单灵活的库,适合快速生成响应式图表。安装方式包括CDN引入或npm安…

php数组实现

php数组实现

PHP 数组的基本实现 PHP 数组是一种非常灵活的数据结构,可以存储多个值,并且支持多种类型的键(整数或字符串)。PHP 数组实际上是有序映射(ordered map),可以看作是列表(vector…

js实现驼峰

js实现驼峰

实现驼峰命名的几种方法 使用正则表达式和字符串替换 通过正则表达式匹配字符串中的特定模式(如下划线或短横线),并将其后的字母转换为大写,同时移除分隔符。 function toCamelCase(s…

js实现防洪

js实现防洪

防抖(Debounce)实现 防抖的核心思想是在事件触发后延迟执行回调函数,若在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口调整等场景。 function debounce(f…