0
爲什麼此變量(lanFound)變得不確定?JavaScript布爾結果失敗
我得到以下輸出:
燈泡的時刻! :)
當我輸入輸出序列給它! ajax是異步的,所以在代碼繼續之後真正回來!無論如何,我會發布,可能會很方便的人!
- 測試:DK
- 結果:未定義
- /網站/ cspdKnowledgeAssemblyPlatform/ApprovedContent/DKCover Letter.docx成功
我有一組的docx文件,但我加入支持語言,但要測試已添加的文件(docx),我使用以下代碼(確定這是一個很長的變體,以便我進行調試):
fileUrl = filePath + fileName;
if (lan != "EN"){
showNotification("testing for: " + lan);
var lanFound = false;
lanFound = checkURL(filePath + lan + fileName);
showNotification("result is: " + lanFound);
if(lanFound){
debugger;
fileUrl = filePath + lan + fileName;
showNotification("found " + fileUrl);
}
}
function checkURL(urlFileName){
$.get(urlFileName)
.fail(function() {
showNotification(urlFileName + " failed");
return false;
})
.done (function() {
showNotification(urlFileName + " succeeded");
return true;
});
}
可以忽略這一點 - 只是增加了「showNotification」)
function showNotification(content){
var currentText = $("#resultpanel").html();
currentText = currentText + "<br/>" + content;
$("#resultpanel").html(currentText);
}
和問題? – madalinivascu
爲什麼變量變得不確定! (請參閱輸出項目符號) –
您正在爲函數執行返回值分配變量: lanFound = checkURL(filePath + lan + fileName); 如果你去checkURL函數,你會看到這個函數沒有事件有'return'語句,在'.fail'和'.done'方法的回調函數中只有一個返回值。這些回調將返回一個值,但是checkURL不會返回任何東西。因此,Javascript中沒有'return'語句的每個函數都會返回'undefined'。我不知道爲什麼它被標記爲重複。 –