簡體   English   中英

如何從嵌套函數中訪問變量?

[英]How can I access a variable from within a nested function?

我需要從嵌套函數中訪問變量,如下所示:

$(function() {  

    var key = getRandomKey(dictionary);
    resetInputRow(dictionary[key]);

    $("#button").click( function() {
        var answer = key;

        // check if user input matches answer (the original key)
        ...

        // reset key for next check
        var key = randomKey(dictionary);
        resetInputRow(dictionary[key]);
    });
});

到目前為止,這還沒有奏效。 當我檢查answer的值時,它是不確定的。

這是因為您聲明了一個稱為key的局部變量,因為您在var key = randomKey(current_dict);之前使用了var var key = randomKey(current_dict); 在點擊處理程序中。 由於您具有局部變量,因此不會訪問變量外部作用域(關閉)。

$("#button").click(function () {
    var answer = key;

    // check if user input matches answer (the original key)
    ...

    // reset key for next check
    key = randomKey(dictionary);
    resetInputRow(dictionary[key]);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM