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
相关推荐
Ai-_Man2 分钟前
我需要批量导出Poe左边栏所有对话,而不是一条具体的对话内容,你们AI导出鸭可以吗?
开发语言·前端·javascript·人工智能·小程序
Cccp.12316 分钟前
【leetcode】(十四)从暴力递归到动态规划
数据结构·算法·leetcode·动态规划
u01110267543 分钟前
Vue 页面离开后还在轮询?统一清理计时器、监听器与观察器
前端·javascript·vue.js
大猩猩X1 小时前
vue 表格组件 vxe-table 实现多行编辑,支持增删改查与校验
前端·javascript·vue.js·vxe-table
旖旎夜光1 小时前
LeetCode 215: 数组中的第K个最大元素 (快速排序) —— 题解
c++·学习·算法·leetcode·力控
技术胖1 小时前
奎爷巡演 AIGC 视频教程 文档
算法
德彪稳坐倒骑驴1 小时前
Leetcode力扣刷题记录与题解
算法·leetcode·职场和发展
程序员爱钓鱼2 小时前
Go 编程实战:Benchmark——基准测试、testing.B、benchmem、性能对比与代码优化实战
go·排序算法
冒险的豆子3 小时前
Proxy & Vue 响应式(合并精简版,适合面试)
前端·javascript·vue.js
Java后端的Ai之路3 小时前
前端技术Vue-18-视图中的渲染
前端·javascript·vue.js