九、高阶函数
3.数组的高阶函数

1.forEach()方法,用于循环遍历整个数组

2.filter()方法,用于过滤数组中的元素,返回过滤结果

3.find()方法,用于获取数组中满足规则的第一个元素

4.findIndex()方法,用于获取数组中满足规则的第一个元素下标

5.some()方法,用于表示数组中是否有满足指定规则的元素,有返回true,一个都没有返回false

6.every()方法,用于表示数组中是否所有元素都满足指定的规则

7.map()方法,用于将原始数组里面的数据根据指定的规则返回新的数组


8.sort()方法,对数组的元素进行排序

9.reduce()方法,统计数组中元素的值(从左到右)

10.reduceRight()方法,统计数组中元素的值(从右到左)

4.手写数组高阶函数

1.手写forEach()方法

2.手写every()方法,,用于表示数组中是否所有元素都满足指定的规则

3.手写reduce()方法,统计数组中元素的值(从左到右)

4.手写filter()方法,用于过滤数组中的元素,返回过滤结果

5.find()方法,用于获取数组中满足规则的第一个元素

6.findIndex()方法,用于获取数组中满足规则的第一个元素下标

7.some()方法,用于表示数组中是否有满足指定规则的元素,有返回true,一个都没有返回false

8.map()方法,用于将原始数组里面的数据根据指定的规则返回新的数组

9.sort()方法,对数组的元素进行排序

a-b是从小到大排序,b-a是从大到小排序
10.reduceRight()方法,统计数组中元素的值(从右到左)

5.闭包函数

返回的值也是一个函数,那么a函数,就是高阶函数
通常情况下,函数执行完成后,函数里面定义的量,会被销毁,但是上面a函数里面定义变量,始终在内存中,因为b函数中用到了a函数中定义的变量。此时,这两个函数就被称之为:闭包函数