我有以下功能
function fileExists(FileName) {
var retvar="false";
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
fileSystem.root.getFile(FileName, null,
function() {
fileEntry.file(function() {
alert("Exists");
},
function() {
});
},
function () {
retvar = "true";
alert(retvar); //says true
});
},null);
alert(retvar); //says false
}
这里,我必须在内部嵌套函数中将retvar的值设置为true。我无法在该函数之外传递该值。任何人都可以告诉我将该值传递给父函数的想法吗?
答案 0 :(得分:3)
哦!谢谢谷歌!回答我!
我必须在函数之前初始化变量!
答案应该是
var retvar="";
function fileExists(FileName) {
retvar = "false";
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
fileSystem.root.getFile(FileName, null,
function() {
fileEntry.file(function() {
alert("Exists");
},
function() {
});
},
function () {
retvar = "true";
alert(retvar); //says true
});
},null);
alert(retvar); //says same if it is assigned as like in the inner loop
}