通过示例解释所有 JavaScript 数组方法( 三 )

(async () => {const array = awAIt Array.fromAsync(asyncArray);console.log(array); // Output : [0, 1]})();17.  includes
检查数组是否包含给定元素 。
const letters = ["a", "b", "c"];console.log(letters.includes("b")); // Output: trueconsole.log(letters.includes("e")); // Output: false18.  indexOf
返回给定元素的第一个匹配项的索引 。如果找到任何匹配项,则返回 -1 。
const letters = ["a", "b", "c", "d"];/** Get index of existing letter 'b' */console.log(letters.indexOf("b")); // Output: 1/** Get index of existing letter 'b' but start searching from index 2 */console.log(letters.indexOf("b", 2)); // Output: -1/** Get index of existing letter 'b' but start searching from index -4 (equivalent to 0) */console.log(letters.indexOf("b", -4)); // Output: 1/** Get index of non existing letter 'e' */console.log(letters.indexOf("e")); // Output: -119. isArray
检查变量是否是数组 。
const array = [];console.log(Array.isArray(array)); // Output : trueconst object = {};console.log(Array.isArray(object)); // Output : false20. join
将所有数组元素连接到一个字符串,并用给定的分隔符将它们分开 。
const letters = ["h", "e", "l", "l", "o"];/** Join all letters together with default separator comma */console.log(letters.join());// Output : h,e,l,l,o/** Join all letters together with no separator */console.log(letters.join(""));// Output : hello/** Join all letters together with dash separator */console.log(letters.join("-"));// Output : h-e-l-l-o21.  keys
返回包含索引的迭代器 。
const letters = ["a", "b"];const iterator1 = letters.keys();console.log(iterator1.next().value); // Output 0console.log(iterator1.next().value); // Output : 1console.log(iterator1.next().value); // Output : undefined22.lastIndexOf
返回给定元素的最后一个匹配项的索引 。如果找到任何匹配项,则返回 -1 。
const letters = ["a", "b", "b", "a"];/** Get last index of existing letter 'b' */console.log(letters.lastIndexOf("b")); // Output: 2/** Get index of non existing letter 'e' */console.log(letters.lastIndexOf("e")); // Output: -1【通过示例解释所有 JavaScript 数组方法】23. map
返回一个新数组,其中所有元素均由给定回调修改 。
const numbers = [1, 2, 3];/** Double all numbers */const doubleNumebrs = numbers.map((number) => number * 2);console.log(doubleNumebrs);// Output : [2, 3, 6]/** Get number array info */const numberArrayInfo = numbers.map((element, index, array) =>`${element} at index ${index} in the array [${array.join(", ")}]`);console.log(numberArrayInfo);// Output : ["1 at index 0 in the array [1, 2, 3]", "2 at index 1 in the array [1, 2, 3]", "3 at index 2 in the array [1, 2, 3]"]24. of
从给定的元素创建一个数组 。
/** Create an array from values */const numbers = Array.of(1, 2, 3, 4);console.log(numbers);// Output: [1, 2, 3, 4]25.pop
删除数组的最后一个元素并返回它 。
/** Create an array from values */const numbers = [1, 2, 3, 4];console.log(numbers.pop()); // Output : 4console.log(numbers); // Output : [1, 2, 3]26. push
将新元素添加到数组中 。
/** add value or values to the end of array */const numbers = [1, 2, 3, 4];numbers.push(5);numbers.push(6, 7);console.log(numbers);// Output : [1, 2, 3, 4, 5, 6, 7]/** Create an array from values */27. reduce
通过应用给定的回调将数组减少到一个值 。给定的回调应在每次迭代中返回更新的值 。
/** Reduce hello array to hello string */const letters = ["h", "e", "l", "l", "o"];const word = letters.reduce((accWord, letter) => `${accWord}${letter}`);


推荐阅读