ES6 引入了一些方便且强大的数组方法,使数组的操作更加简洁和灵活。以下是一些常用的ES6数组方法:
Array.from(iterable, mapFn, thisArg):
将类数组对象或可迭代对象转换为真正的数组。
let iterable = ‘123’;
let array = Array.from(iterable, Number); // [1, 2, 3]
Array.of(element1, element2, …):
创建一个由参数组成的新数组。
let newArray = Array.of(1, 2, 3); // [1, 2, 3]
Array.find(callback(element, index, array), thisArg):
返回数组中满足提供的测试函数的第一个元素的值,否则返回 undefined。
let numbers = [10, 20, 30, 40];
let result = numbers.find(num => num > 25); // 30
Array.findIndex(callback(element, index, array), thisArg):
返回数组中满足提供的测试函数的第一个元素的索引,否则返回 -1。
let numbers = [10, 20, 30, 40];
let index = numbers.findIndex(num => num > 25); // 2
Array.includes(element, fromIndex):
判断数组是否包含特定元素,返回布尔值。
let numbers = [1, 2, 3, 4];
let hasThree = numbers.includes(3); // true
Array.fill(value, start, end):
用指定的值填充数组,可以指定填充的起始和结束位置。
let array = [1, 2, 3, 4];
array.fill(0, 2, 4); // [1, 2, 0, 0]
Array.keys(),Array.values(),Array.entries():
分别返回数组的键、值、和键值对的迭代器。
let array = [‘a’, ‘b’, ‘c’];
let keys = Array.from(array.keys()); // [0, 1, 2]
let values = Array.from(array.values()); // [‘a’, ‘b’, ‘c’]
let entries = Array.from(array.entries()); // [[0, ‘a’], [1, ‘b’], [2, ‘c’]]
Array.some(callback(element, index, array), thisArg),Array.every(callback(element, index, array), thisArg):
some 返回数组中是否至少有一个元素通过测试,every 返回数组中是否所有元素都通过测试。
let numbers = [1, 2, 3, 4];
let hasEven = numbers.some(num => num % 2 === 0); // true
let allEven = numbers.every(num => num % 2 === 0); // false