JS中数组有哪些方法

JS中数组常用方法

数组是编程中常用的数据结构,提供了许多方法来操作和处理数据。以下是一些常见的数组方法及其功能:

1、判断和转换方法

1.1、isArray(): 判断参数是否为数组,返回布尔值。

javascript 复制代码
 Array.isArray([1, 2, 3]); // true
 Array.isArray('string'); // false

1.2、toString(): 将数组转换为字符串。

javascript 复制代码
 [1, 2, 3].toString(); // "1,2,3"

1.3、valueOf(): 返回数组本身。

javascript 复制代码
 [1, 2, 3].valueOf(); // [1, 2, 3]

2、添加和删除元素

2.1、push(): 在数组末尾添加一个或多个元素,返回新数组的长度。

javascript 复制代码
let arr = [1, 2]; 
arr.push(3);        //3
console.log(arr);  // [1, 2, 3]

2.2、unshift(): 在数组开头添加一个或多个元素,返回新数组的长度。

javascript 复制代码
let arr = [1, 2]; 
arr.unshift(0);    //3 
console.log(arr); // [0, 1, 2]

2.3、pop(): 删除数组末尾的元素,返回被删除的元素。

javascript 复制代码
let arr = [1, 2, 3];
arr.pop();         //3
console.log(arr); // [1, 2]

2.4、shift(): 删除数组开头的元素,返回被删除的元素。

javascript 复制代码
let arr = [1, 2, 3];
arr.shift(); //1
console.log(arr); // [2, 3]

3、修改和排序元素

3.1、reverse(): 翻转数组。

javascript 复制代码
let arr = [1, 2, 3];
arr.reverse(); // [3, 2, 1]

3.2、sort(): 对数组进行排序。

javascript 复制代码
let arr = [3, 1, 2]; 
arr.sort(); // [1, 2, 3]

3.3、splice(): 在指定位置删除或添加元素。

javascript 复制代码
let arr = [1, 2, 3];
arr.splice(1, 1, 'a'); // [2] 
console.log(arr); // [1, 'a', 3]

4、连接和切割元素

4.1、concat(): 合并多个数组,返回新数组。

javascript 复制代码
let arr1 = [1, 2];
let arr2 = [3, 4]; 
let arr3 = arr1.concat(arr2); // [1, 2, 3, 4]

4.2、join(): 用指定的分隔符将数组元素拼接成字符串。

javascript 复制代码
let arr = [1, 2, 3];
arr.join('-'); // "1-2-3"

4.3、slice(): 截取数组的一部分,返回新数组。

javascript 复制代码
let arr = [1, 2, 3, 4]; 
arr.slice(1, 3); // [2, 3]

5、查找和过滤元素

5.1、indexOf(): 返回元素在数组中第一次出现的索引。

javascript 复制代码
let arr = [1, 2, 3, 2];
arr.indexOf(2); // 1

5.2、lastIndexOf(): 返回元素在数组中最后一次出现的索引。

javascript 复制代码
let arr = [1, 2, 3, 2];
arr.lastIndexOf(2); // 3

5.3、filter(): 过滤数组中满足条件的元素,返回新数组。

javascript 复制代码
let arr = [1, 2, 3, 4];
arr.filter(x => x > 2); // [3, 4]

5.4、find(): 查找数组中满足条件的第一个元素,返回该元素。

javascript 复制代码
let arr = [1, 2, 3, 4];
arr.find(x => x > 2); // 3

5.5、findIndex(): 查找数组中满足条件的第一个元素的索引。

javascript 复制代码
let arr = [1, 2, 3, 4]; 
arr.findIndex(x => x > 2); // 2

5.6、includes(): 判断数组是否包含某个元素。

javascript 复制代码
let arr = [1, 2, 3];
arr.includes(2); // true

6、遍历和操作元素

6.1、map(): 对数组中的每个元素执行指定操作,返回新数组。

javascript 复制代码
let arr = [1, 2, 3];
arr.map(x => x * 2); // [2, 4, 6]

6.2、forEach(): 遍历数组,对每个元素执行指定操作。

javascript 复制代码
let arr = [1, 2, 3]; 
arr.forEach(x => console.log(x)); // 1 2 3

6.3、reduce(): 累加数组中的元素,返回最终结果。

javascript 复制代码
let arr = [1, 2, 3]; 
arr.reduce((sum, x) => sum + x, 0); // 6

6.4、every(): 判断数组中的所有元素是否都满足条件。

javascript 复制代码
let arr = [1, 2, 3]; 
arr.every(x => x > 0); // true

6.5、some(): 判断数组中是否有元素满足条件。

javascript 复制代码
let arr = [1, 2, 3];
arr.some(x => x > 2); // true
相关推荐
Jerry8 小时前
LeetCode 28. 找出字符串中第一个匹配项的下标
算法
Jerry10 小时前
LeetCode 459. 重复的子字符串
算法
成都渲染101云渲染666610 小时前
如何在3ds Max中实现更快、更高质量的渲染
前端·javascript·人工智能
海石13 小时前
1500分的题目,确实有实力,不过还是我略胜一筹
算法·leetcode
海石13 小时前
【记忆化搜索】条条大路通AC,走好适合你的那一条,走到后再考虑走得快
算法·leetcode
SRET14 小时前
Mineradio 沙盒隔离安装完全指南 | 一键安全运行 Electron 应用!!!
javascript·经验分享·安全·electron·aigc·音视频·ai编程
全栈前端老曹14 小时前
【MongoDB】安全与权限管理 —— 用户认证、角色权限、SSL 加密
前端·javascript·数据库·安全·mongodb·nosql·ssl
Jerry14 小时前
LeetCode 151. 反转字符串中的单词
算法
a11177617 小时前
LM 算法迭代过程动画演示(SLAM)
算法
头茬韭菜17 小时前
Context 的生死抉择:四层压缩、截断算法与 Session Memory
算法·ai