可能重複:
JavaScript: var functionName = function() {} vs function functionName() {}有人可以解釋我用這個Javascript的範圍問題嗎?
我有一些JavaScript它主要工作,除了這一個功能,我可以從某些領域而不是其他人打電話。這似乎是一個範圍問題,但我不知道爲什麼。
$().ready(function() {
UpdateElfDisplay(); // <--- Undefined
$('#Attribute1').change(function() {
UpdateElfDisplay(); // <--- Works just fine.
});
var UpdateElfDisplay = function() {
// ... some work done here
};
});
正如我上面標註的UpdateElfDisplay功能工作正常,當我把它從.change()函數,但我得到一個「未定義」如果我試圖把它加載文檔時。有人可以解釋爲什麼,或者指引我描述這一點。
嘗試在第一次調用之前移動UpdateElfDisplay函數聲明。 – Ram
@epascarello - 嗯。我可以看到爲什麼有些人可能會認爲這是一個重複的問題,因爲現在看起來答案是一樣的。但是,我認爲這個問題是完全不同的。例如,「天空是什麼顏色?」和「海洋是什麼顏色?」可能有相同的答案,但不是重複的問題。 –
這是相同的答案,只是不同的方式來問它。大聲笑 – epascarello