JavaScript 数组方法:一份不能错过的学习文档
JavaScript 中的数组是存储多个数据项的对象,并且提供了多种方法来操作这些数据。下面是一些常用的数组方法,它们的功能、语法、用法示例以及浏览器兼容性。
1. push()
- 功能:在数组的末尾添加一个或多个元素,返回新的数组长度。
- 语法:
array.push(element1, element2, ..., elementN)
- 示例:
let arr = [1, 2, 3];
let newLength = arr.push(4, 5); // [1, 2, 3, 4, 5]
console.log(newLength); // 5
- 兼容性:所有主流浏览器都支持。
2. pop()
- 功能:从数组的末尾删除一个元素,并返回该元素。
- 语法:
array.pop()
- 示例:
let arr = [1, 2, 3];
let lastElement = arr.pop(); // 3
console.log(arr); // [1, 2]
- 兼容性:所有主流浏览器都支持。
3. shift()
- 功能:从数组的开头删除一个元素,并返回该元素。
- 语法:
array.shift()
- 示例:
let arr = [1, 2, 3];
let firstElement = arr.shift(); // 1
console.log(arr); // [2, 3]
- 兼容性:所有主流浏览器都支持。
4. unshift()
- 功能:在数组的开头添加一个或多个元素,返回新的数组长度。
- 语法:
array.unshift(element1, element2, ..., elementN)
- 示例:
let arr = [2, 3];
let newLength = arr.unshift(1); // [1, 2, 3]
console.log(newLength); // 3
- 兼容性:所有主流浏览器都支持。
5. map()
- 功能:创建一个新数组,数组中的元素是原数组元素经过指定函数处理后的结果。
- 语法:
let newArray = array.map(function(currentValue, index, array) {
// 返回新的值
})
- 示例:
let arr = [1, 2, 3];
let result = arr.map(x => x * 2); // [2, 4, 6]
- 兼容性:所有主流浏览器都支持。
6. filter()
- 功能:创建一个新数组,包含所有通过测试的元素(符合条件的元素)。
- 语法:
let newArray = array.filter(function(currentValue, index, array) {
return condition;
})
- 示例:
let arr = [1, 2, 3, 4, 5];
let result = arr.filter(x => x > 2); // [3, 4, 5]
- 兼容性:所有主流浏览器都支持。
7. reduce()
- 功能:对数组中的每个元素执行指定操作,并将其累积为一个值。
- 语法:
let result = array.reduce(function(accumulator, currentValue, index, array) {
return accumulator;
}, initialValue)
- 示例:
let arr = [1, 2, 3, 4];
let sum = arr.reduce((acc, curr) => acc + curr, 0); // 10
- 兼容性:所有主流浏览器都支持。
8. forEach()
- 功能:对数组中的每个元素执行指定的函数,但不返回新数组。
- 语法:
array.forEach(function(currentValue, index, array) {
// 执行的代码
})
- 示例:
let arr = [1, 2, 3];
arr.forEach(x => console.log(x)); // 输出 1, 2, 3
- 兼容性:所有主流浏览器都支持。
9. find()
- 功能:返回数组中第一个符合条件的元素,找不到返回
undefined。 - 语法:
let result = array.find(function(currentValue, index, array) {
return condition;
})
- 示例:
let arr = [1, 2, 3, 4];
let result = arr.find(x => x > 2); // 3
- 兼容性:所有主流浏览器都支持。
10. includes()
- 功能:检查数组中是否包含某个元素。
- 语法:
array.includes(element, fromIndex)
- 示例:
let arr = [1, 2, 3];
let result = arr.includes(2); // true
- 兼容性:所有主流浏览器都支持。
11. indexOf()
- 功能:返回指定元素在数组中首次出现的位置,如果没有则返回
-1。 - 语法:
array.indexOf(element, fromIndex)
- 示例:
let arr = [1, 2, 3];
let result = arr.indexOf(2); // 1
- 兼容性:所有主流浏览器都支持。
12. sort()
- 功能:对数组中的元素进行排序,默认按字符串的 Unicode 编码顺序排序。
- 语法:
array.sort(compareFunction)
- 示例:
let arr = [3, 1, 4, 2];
arr.sort(); // [1, 2, 3, 4]
- 兼容性:所有主流浏览器都支持。
13. reverse()
- 功能:将数组中的元素顺序反转。
- 语法:
array.reverse()
- 示例:
let arr = [1, 2, 3];
arr.reverse(); // [3, 2, 1]
- 兼容性:所有主流浏览器都支持。
结语:
这些方法是 JavaScript 中最常用的数组操作方法,掌握它们能帮助你在开发中高效地处理数组数据。
更多详细文章请关注其他相关文章!