JavaScript:鉤子函式與回撥函式的區別

marktwain發表於2018-06-13

js獲取dom資料的兩種方式:

1  js派函式監聽事件 =>監聽函式就是所謂的鉤子函式=>函式鉤取事件:函式主動找事件=>鉤子函式

2  js預留函式給dom事件,dom事件呼叫js預留的函式 =>事件派發給函式:事件呼叫函式=>回撥函式

所謂鉤子函式,打個形象的比喻就是:一個大房子裡的監控攝像頭監控著每一個進入的人的面部特徵,識別出了符合條件的人就觸發警告(執行函式事件); 而回撥函式,可以看做是在一片地區埋了許許多多的地雷,一旦踩中了某個地雷(觸發事件),地雷就會爆炸(執行函式事件)。

可以理解為:鉤子函式是事件被動地被監聽著,一旦滿足條件就執行:這種情況下往往可以執行多次(被監聽到多次);而回撥函式是主動觸事件,然後執行函式體的內容,往往是區域性的。

相關文章