数组方法
push
和 pop
push
:在数组末尾添加一个或多个元素,并返回数组的新长度。pop
:从数组末尾移除一个元素,并返回该元素。
let arr = [1, 2, 3];
arr.push(4); // [1, 2, 3, 4]
arr.pop(); // 4, arr变为 [1, 2, 3]
shift
和 unshift
shift
:从数组开头移除一个元素,并返回该元素。unshift
:在数组开头添加一个或多个元素,并返回数组的新长度。
let arr = [1, 2, 3];
arr.unshift(0); // [0, 1, 2, 3]
arr.shift(); // 0, arr变为 [1, 2, 3]
map
创建一个新数组,其结果是对原数组中的每个元素调用一个提供的函数后的返回值。
let arr = [1, 2, 3];
let newArr = arr.map(x => x * 2); // [2, 4, 6]
filter
创建一个新数组,其包含通过所提供函数实现的测试的所有元素。
let arr = [1, 2, 3, 4];
let newArr = arr.filter(x => x > 2); // [3, 4]
reduce
对数组中的每个元素执行一个提供的 reducer 函数,将其结果汇总为单个返回值。
let arr = [1, 2, 3, 4];
let sum = arr.reduce((accumulator, currentValue) => accumulator + currentValue, 0); // 10
reverse
反转数组元素的顺序。原地修改而不是创建新数组。
const array = [1, 2, 3, 4, 5];
const reversedArray = array.reverse();
console.log(reversedArray); // 输出: [5, 4, 3, 2, 1]
console.log(array); // 输出: [5, 4, 3, 2, 1](原数组也被修改了)
反转字符串:将字符串转换为数组,反转后再转换为字符串。
const str = "hello";
const reversedStr = str.split('').reverse().join('');
console.log(reversedStr); // "olleh"
forEach
对数组中的每个元素执行一次提供的函数。
let arr = [1, 2, 3];
arr.forEach(x => console.log(x));
// 输出:
// 1
// 2
// 3
find
和 findIndex
find
:返回数组中满足提供的测试函数的第一个元素的值。findIndex
:返回数组中满足提供的测试函数的第一个元素的索引。
let arr = [1, 2, 3, 4];
let found = arr.find(x => x > 2); // 3
let foundIndex = arr.findIndex(x => x > 2); // 2