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