1.2.3.20.閉包與回呼

  • 使用JavaScript的一級函數的特性, 將函數當成參數送入

    • 多虧有閉包, 三秒後可以取得greeting

  • 回呼 (callback)

    • 我執行你, 當你結束後執行另一個函數

function sayHiLater() {
    var greeting = 'Hi';
    setTimeOut(function() {
        console.log('hi')
    }, 3000);
}

sayHiLater();

//jQuery uses function expressions and first-class functions!
$("button").click(function() {
});

function tellMeWhenDone(callback){
    var a = 1000;
    var b = 2000;

    callback();
}

tellMeWhenDone(function() {
    console.log('I am done');
});

Last updated