javascript callback function原理

由YUI 大神 Stoyan Stefanov的一書Object-Oriented Javascript中,我對於function的認知有了另一種的看法,其中提到 functions in javascript are actually the data! function其實最後都可以return一個運算後的data,

另外在匿名函數的應用中,最令我茅塞頓開的是callback function的原理及其方便之處:
如下列程式碼所示:

這最後會得到的[21, 41, 61],看起來很不錯,但是還是有很大的改善空間,例如這裡面跑了兩次迴圈,這在performance上的影響很昂貴。
可以被改寫成以下

這裡就利用到callback的原理,將裡面所執行的function變成其中一個變數去執行,用不同的callback function帶入就會產生不同的結果。

如果就可以產生不同的結果,在performance上也節省了許多,乃callback的真義!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *