js数组实现
数组的基本创建与初始化
在JavaScript中,数组可以通过字面量或构造函数创建:
// 字面量方式
const arr1 = [1, 2, 3];
// 构造函数方式
const arr2 = new Array(3); // 创建长度为3的空数组
const arr3 = new Array(1, 2, 3); // 包含元素的数组
数组的常见操作
添加/删除元素
// 末尾添加
arr1.push(4); // [1, 2, 3, 4]
// 开头添加
arr1.unshift(0); // [0, 1, 2, 3, 4]
// 末尾删除
arr1.pop(); // [0, 1, 2, 3]
// 开头删除
arr1.shift(); // [1, 2, 3]
截取与拼接

// 截取子数组(不改变原数组)
const subArr = arr1.slice(1, 3); // [2, 3]
// 拼接数组
const newArr = arr1.concat([4, 5]); // [1, 2, 3, 4, 5]
数组的遍历与转换
遍历方法
// forEach
arr1.forEach(item => console.log(item));
// map(返回新数组)
const doubled = arr1.map(item => item * 2); // [2, 4, 6]
过滤与查找

// filter
const evens = arr1.filter(item => item % 2 === 0); // [2]
// find
const firstEven = arr1.find(item => item % 2 === 0); // 2
多维数组与特殊操作
多维数组示例
const matrix = [[1, 2], [3, 4]];
console.log(matrix[1][0]); // 3
展开运算符与解构
// 合并数组
const combined = [...arr1, ...newArr]; // [1, 2, 3, 4, 5]
// 解构赋值
const [first, second] = arr1; // first=1, second=2
性能优化与注意事项
- 避免频繁使用
delete删除元素(会留下空位)。 - 大规模数据操作时,优先选择
for循环而非高阶函数(如forEach)。 - 使用
Array.from或扩展运算符转换类数组对象(如arguments)。
以上方法覆盖了JavaScript数组的常见使用场景,可根据需求灵活组合。






