1. fill
方法
fill
方法用一个固定值替换数组中从 start
索引到 end
索引(不包括 end
)的所有元素,返回修改后的数组。
// 使用 `fill` 方法填充数组
const arr = [1, 2, 3, 4, 5, 6];
arr.fill(0, 1, 4); // 从索引1开始到索引3结束,填充值为0
console.log(arr); // 输出: [1, 0, 0, 0, 5, 6]
2. find
方法
find
方法返回数组中满足提供的测试函数的第一个元素的值。如果没有找到,返回 undefined
。
// 使用 `find` 方法查找数组中的元素
const users = [{
id: 1, name: "Alice" }, {
id: 2, name: "Bob" }];
const user = users.find(user => user.id === 2);
console.log(user); // 输出: { id: 2, name: "Bob" }
3. findIndex
方法
findIndex
方法返回数组中满足提供的测试函数的第一个元素的索引,如果没有找到,返回 -1
。
// 使用 `findIndex` 方法找到数组中元素的索引
const numbers = [10, 20, 30, 40];
const index = numbers.findIndex(number => number > 25);
console.log(index); // 输出: 2
4. sort
方法
sort
方法对数组元素进行排序,并返回排序后的数组。默认排序是按照字符串顺序,对于数字需要提供比较函数。
// 使用 `sort` 方法对数字数组排序
const numbers = [4, 1, 3, 2];
numbers.sort((a, b) => a - b); // 提供比较函数按升序排序
console.log(numbers); // 输出: [1, 2, 3, 4]
5. slice
和 sort
组合使用
要排序数组而不改变原始数组,可以使用 slice
方法先复制数组,然后对副本进行排序。
// 使用 `slice` 和 `sort` 组合对数组进行排序而不改变原始数组
const numbers = [4, 1, 3, 2];
const sortedNumbers = numbers.slice().sort((a, b) => a - b);
console.log(`原始数组: ${
numbers}, 排序后的数组: ${
sortedNumbers}`);
6. reverse
方法
reverse
方法将数组中的元素顺序颠倒,并返回修改后的数组。要保留原始数组,可以先使用 slice
方法复制数组。
// 使用 `reverse` 方法反转数组
const numbers = [1, 2, 3, 4];
const reversedNumbers = numbers.slice().reverse();
console.log(`原始数组: ${
numbers}, 反转后的数组: ${
reversedNumbers}`);
7. map
方法
要替换数组中的特定元素而不改变原始数组,可以使用 map
方法创建一个新数组。
// 使用 `map` 方法替换数组中的元素
const numbers = [1, 2, 3, 4];
const modifiedNumbers = numbers.map((number, index) => index === 1 ? 0 : number);
console.log(`原始数组: ${
numbers}, 修改后的数组: ${
modifiedNumbers}`);