高阶函数可以被简单理解为函数的高级应用,JavaScript
中函数可以被当值
来对待,基于这个特性实现函数的高级应用。
值
是 JavaScript
中的数据,如数值
、字符串
、布尔
、对象
等。
函数表达式
- 函数也是
数据
- 把函数赋值给变量
let abc = function(){}
- 普通函数的声明与调用无顺序限制,推荐做法先声明再调用
- 函数表达式必须要先声明再调用
回调函数
如果将函数 A
做为参数传递给函数 B
时,我们称函数 A
为回调函数 简单理解: 当一个函数当做参数来传递给另外一个函数的时候,这个函数就是回调函数
常见的使用场景
//1.间歇函数
function fn(){
console.log('我是谁')
}
//fn传递给了setIterval,fn就是回掉函数
setInterval(fn,1000)
//2.事件监听
//这里匿名函数为回掉函数
box.addEventListener('click',function(){
console.log('123')
})
- 把函数当做另外一个函数的参数传递,这个函数就叫回调函数
- 回调函数本质还是函数,只不过把它当成参数使用
- 使用匿名函数做为回调函数比较常见