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
相关推荐
2401_872418783 小时前
算法入门:数据结构-堆
数据结构·算法
漂流瓶jz3 小时前
Webpack如何实现万物皆可import?loader的使用/配置/手写实践
前端·javascript·webpack
ZC跨境爬虫3 小时前
跟着 MDN 学CSS day_41:显式轨道、隐式网格与区域命名放置
前端·javascript·css·ui·交互
xwz小王子4 小时前
手术机器人登上Science Robotics:2毫米纤细手臂,从3厘米切口完成腰椎神经减压
算法·机器人
黎阳之光5 小时前
视频孪生智护供水生命线:黎阳之光赋能医疗与园区水务高质量升级
运维·物联网·算法·安全·数字孪生
Moment5 小时前
长上下文会最终杀死 Rag 吗?
前端·javascript·后端
Black蜡笔小新6 小时前
自动化AI算法训练服务器DLTM制造业AI质检工作站助力制造业实现AI智检
人工智能·算法·自动化
嵌入式小能手6 小时前
飞凌嵌入式ElfBoard-进程间的通信之命名管道
linux·服务器·算法
啦哈拉哈6 小时前
Leetcode题解记录-hot100(81-100)
算法·leetcode·职场和发展
csdn_aspnet7 小时前
Java 霍尔分区算法(Hoare‘s Partition Algorithm)
java·开发语言·算法