1.forEach( item, index, array )
: 遍历数组,对数组的每个元素执行一次提供的函数,改变当前数组,没有返回值
- item: 当前项的值
- index: 当前项的索引
- array: 操作的数组
let arr1 = [ 'a', 'b', 'c' ]; let arr2 = arr1.forEach( ( item, index, arr ) => { if (index === 0) console.log( 'arr: ', arr ); console.log( 'item: ', item, ' | index: ', index ); } ); console.log( 'arr2: ', arr2 );
2.map( item, index, array )
: 返回一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。
- item: 当前项的值
- index: 当前项的索引
- array: 操作的数组
let arr1 = [ 'a', 'b', 'c' ]; let arr2 = arr1.map( ( item, index, arr ) => { return 'after map ' + item } ) console.log( 'arr2: ', arr2 );
3.filter( )
: 返回一个新数组, 其包含通过所提供函数实现的测试的所有元素。也就是说一个过滤器的作用,没有通过函数测试的元素将被过滤掉
- item: 当前项的值
- index: 当前项的索引
- array: 操作的数组
let arr1 = [ 'javaScript', 'webpack', 'typeScript', 'nodejs' ]; let arr2 = arr1.filter( ( item, index, arr ) => { // 返回字符长度小于10的元素 return item.length < 10 } ) console.log( 'arr2: ', arr2 );
4.every( item, index, array )
: 它返回一个Boolean
值,测试数组内的所有元素是否都能通过指定函数的测试,所有元素都通过才会返回true
,否则返回false
- item: 当前项的值
- index: 当前项的索引
- array: 操作的数组
let arr1 = [ 1, 2, 3, 4, 5 ]; let arr2 = arr1.every( ( item, index, arr ) => { return item < 5 } ) console.log( 'arr2: ', arr2 );
5.some( item, index, array )
: 和every
相反,只要数组中的元素有一个通过指定函数的测试,那么就返回true
,否则返回false
- item: 当前项的值
- index: 当前项的索引
- array: 操作的数组
let arr1 = [ 1, 2, 3, 4, 5 ]; let arr2 = arr1.some( ( item, index, arr ) => { return item < 2 } ) console.log( 'arr2: ', arr2 );
6.reduce( accumulator, item, index, array )
: 对数组中的每个元素执行一个提供的reducer函数,将其结果汇总为单个返回值。
- accumulator: 累加器
- item: 当前项的值
- index: 当前项的索引
- array: 操作的数组
let arr1 = [ 1, 2, 3, 4, 5 ]; let arr2 = arr1.reduce( ( accumulator, item, index, arr ) => { console.log( '每次累加器的值: ', accumulator ); return accumulator + item; } ) console.log( 'arr2: ', arr2 );
7.reduceRight( accumulator, item, index, array )
: 功能与reduce
相同,不同的是: 从数组最后一个元素向前遍历计算
热门文章
- 生产动物疫苗的上市公司有哪些股票(生产动物疫苗的上市公司有哪些股票名称)
- 让猫挠了轻微出血有事吗猫打了狂犬疫苗 让猫挠了轻微出血有事吗猫打了狂犬疫苗会怎么样
- 佳雯宠物医院总部地址电话(佳雯宠物医院营业时间)
- MySQL 获取系统时间/系统日期/日期时间的函数
- 基于Linux下openssl交叉编译详解
- 宠物流浪狗免费领养(流浪狗领养小程序)
- 床上快速找到跳蚤的方法(跳蚤咬的包什么样图片)
- toString() 和 new String()用法区别
- VPN美国 | 2月9日21.3M/S|免费VPN/SSR/Shadowrocket/V2ray/Clash免费节点链接地址
- VPN美国 | 2月13日18.1M/S|免费VPN/V2ray/SSR/Clash/Shadowrocket免费节点链接地址
归纳
-
30 2025-02