温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ecmascript怎样处理数组数据

发布时间:2026-10-09 07:24:01 来源:亿速云 阅读:96 作者:小樊 栏目:编程语言

在 ECMAScript(JavaScript) 中,数组是最常用的数据结构之一。下面从创建、遍历、增删改查、常用高阶函数、ES6+ 新特性几个方面系统说明如何处理数组数据。


一、创建数组

const arr1 = [1, 2, 3];
const arr2 = new Array(3);      // [empty × 3]
const arr3 = Array.of(1, 2, 3); // [1,2,3]
const arr4 = Array.from('abc'); // ['a','b','c']

二、访问与修改

const arr = [10, 20, 30];

arr[0];      // 10
arr[1] = 25; // 修改
arr.length;  // 3

三、遍历数组(常用方式)

1. for

for (let i = 0; i < arr.length; i++) {
  console.log(arr[i]);
}

2. for…of(ES6)

for (const item of arr) {
  console.log(item);
}

3. forEach

arr.forEach((item, index) => {
  console.log(index, item);
});

四、增删元素

const arr = [1, 2, 3];

arr.push(4);     // 末尾添加 → [1,2,3,4]
arr.pop();       // 末尾删除
arr.unshift(0);  // 开头添加
arr.shift();     // 开头删除
arr.splice(1, 1); // 从索引1删除1个
arr.splice(1, 0, 9); // 插入

五、常用数组方法(重点)

1. map(映射)

const nums = [1, 2, 3];
const double = nums.map(n => n * 2);
// [2,4,6]

2. filter(过滤)

const evens = nums.filter(n => n % 2 === 0);

3. reduce(汇总)

const sum = nums.reduce((acc, n) => acc + n, 0);

4. find / findIndex

nums.find(n => n > 1);     // 2
nums.findIndex(n => n > 1); // 1

5. some / every

nums.some(n => n > 2);  // true
nums.every(n => n > 0); // true

6. sort

nums.sort((a, b) => a - b);

7. includes

nums.includes(2); // true

六、ES6+ 数组新特性

1. 扩展运算符

const a = [1, 2];
const b = [...a, 3]; // [1,2,3]

2. 解构赋值

const [x, y] = [10, 20];

3. Array.from / Array.of

Array.from({ length: 3 }, (_, i) => i);
// [0,1,2]

4. flat / flatMap

[1, [2, [3]]].flat(2);
// [1,2,3]

七、不可变处理(推荐)

函数式风格(不修改原数组):

const newArr = arr.map(x => x + 1);

八、示例:综合处理

const users = [
  { name: 'Tom', age: 18 },
  { name: 'Lucy', age: 22 },
  { name: 'Jack', age: 16 }
];

const names = users
  .filter(u => u.age >= 18)
  .map(u => u.name);
// ['Tom','Lucy']

如果你有具体场景(如:去重、分组、树形结构、异步处理数组等),可以告诉我,我可以给你更针对性的写法。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手