问题代码是:
function foo() {
var data = 10;
bar(function(players) {
data = players;
});
return data;
}
function bar(callback) {
setTimeout(function() {
callback(20);
}, 500);
}
var result = foo();
我认为结果是20。但是此值失败。 这个问题的解决方案是10。 为什么“ setTimeout函数”在此问题中不起作用?