在JS中,函数中会有很多参数,这些参数以类似json的方式存在。参数类型可以是基本类型,也可以是一个function(函数),
例如函数1,有三个参数,一个String类型的参数1,一个Number类型的参数2,一个function类型的参数3,即:
函数1:function({
参数1:‘XXX’
参数2:2
参数3({
log();
})
})
函数2:(){
}
那么参数3是函数1的回调函数。
回调函数和主线程同时进行,叫做异步,如上举例,参数3会在函数1执行后才会进行,是事件驱动的,这个函数和函数2会同时进行。
上图是一个买烟的函数,当执行到买烟这个函数时,系统单独执行买烟,买烟之后的函数会和买烟函数同时进行,类似于多线程,然后买烟完毕后,回调系统中的finsh函数,这时候就回到了之前的顺序执行。