19 个每个人都应该知道的 JavaScript 数组方法
🟢 🟢 🟢
绿色方法
🔴 🔴 🔴
红色方法
🔵 🔵 🔵
蓝色方法
🟡 🟡 🟡
黄色方法
🟢 🟢 🟢
绿色方法
🟢 🟢 🟢
绿色方法
添加和删除元素
push():将一个或多个元素添加到数组的末尾,并返回数组的新长度。
let fruits = ['apple', 'banana'];
fruits.push('cherry');
// ['apple', 'banana', 'cherry']
pop():从数组中移除最后一个元素并返回该元素。
let fruits = ['apple', 'banana', 'cherry'];
let last = fruits.pop();
// 'cherry', now fruits = ['apple', 'banana']
shift():从数组中移除第一个元素并返回该元素。
let fruits = ['apple', 'banana', 'cherry'];
let first = fruits.shift();
// 'apple', now fruits = ['banana', 'cherry']
unshift():将一个或多个元素添加到数组的开头,并返回数组的新长度。
let fruits = ['banana', 'cherry'];
fruits.unshift('apple');
// ['apple', 'banana', 'cherry']
请支持我们!🙏⭐️
顺便一提,我是 WebCrumbs 团队的成员,如果您能看看我们为 Node.js 提供的无需代码的解决方案,它将对我们有莫大的帮助,它能简化 Web 开发。给我们点个赞就太棒了!
我们正在投入大量精力,帮助开发者尽可能快速、轻松地将他们的想法转化为实际的网站(例如:轻松集成插件和主题),我们非常感谢您的每一份支持!
好了,现在让我们继续学习 JavaScript!
🔴 🔴 🔴
红色方法
搜索和切片
indexOf():返回给定元素在数组中可以找到的第一个索引,如果不存在则返回 -1。
let fruits = ['apple', 'banana', 'cherry'];
let index = fruits.indexOf('banana');
// 1
includes():确定数组是否包含某个元素,并根据情况返回 true 或 false。
let fruits = ['apple', 'banana', 'cherry'];
let hasApple = fruits.includes('apple');
// true
slice():将数组的一部分浅拷贝到一个新的数组对象中。
let fruits = ['apple', 'banana', 'cherry'];
let someFruits = fruits.slice(0, 2);
// ['apple', 'banana']
🔵 🔵 🔵
蓝色方法
重新排序和合并
reverse():原地反转数组。数组的第一个元素变为最后一个元素,最后一个元素变为第一个元素。
let fruits = ['apple', 'banana', 'cherry'];
fruits.reverse();
// ['cherry', 'banana', 'apple']
concat():合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
let fruits = ['apple', 'banana'];
let moreFruits = ['cherry', 'date'];
let allFruits = fruits.concat(moreFruits);
// ['apple', 'banana', 'cherry', 'date']
join():将数组中的所有元素连接成一个字符串并返回该字符串。
let fruits = ['apple', 'banana', 'cherry'];
let result = fruits.join(', ');
// 'apple, banana, cherry'
lastIndexOf():返回给定元素在数组中可以找到的最后一个索引,如果不存在则返回 -1。
let numbers = [1, 2, 3, 2, 1];
numbers.lastIndexOf(2);
// 3
🟡 🟡 🟡
黄色方法
循环和迭代
forEach():对数组中的每个元素执行一次提供的函数。
let fruits = ['apple', 'banana', 'cherry'];
fruits.forEach(fruit => console.log(fruit));
// 'apple'
// 'banana'
// 'cherry'
map():创建一个新数组,其中包含对调用数组中的每个元素调用提供的函数的结果。
let numbers = [1, 4, 9];
let roots = numbers.map(Math.sqrt);
// [1, 2, 3]
filter():创建一个新数组,其中包含所有通过所提供函数实现的测试的元素。
let numbers = [1, 4, 9];
let bigNumbers = numbers.filter(number => number > 5);
// [9]
reduce():对累加器和数组中的每个元素(从左到右)应用一个函数,将其简化为单个值。
let numbers = [1, 2, 3, 4];
let sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0);
// 10
some():测试数组中是否至少有一个元素通过了所提供函数实现的测试。返回布尔值。
let numbers = [1, 2, 3, 4];
let hasNegativeNumbers = numbers.some(number => number < 0);
// false
`every()`:测试数组中的所有元素是否都通过了所提供函数实现的测试。返回一个布尔值。
let numbers = [1, 2, 3, 4];
let allPositiveNumbers = numbers.every(number => number > 0);
// true
find():返回数组中第一个满足所提供测试函数的元素的值。否则返回 undefined。
let numbers = [1, 5, 10, 15];
let found = numbers.find(function(element) {
return element > 9;
});
// 10
toString():返回表示指定数组及其元素的字符串。
let fruits = ['apple', 'banana', 'cherry'];
let result = fruits.toString();
// 'apple,banana,cherry'
这些方法构成了 JavaScript 中数组操作的基础,了解如何使用它们可以大大简化你的编码任务。
文章来源:https://dev.to/buildwebcrumbs/17-javascript-array-methods-everyone-needs-to-know-1j35