> var score = 6;
> function test(callback) {
var score0 = 16;
console.log(score0);
function callback() { return score0; };
callback();
}
> score = test()
16
> score
undefined
得分的适当值应该是未定义的。我该怎么办?
答案 0 :(得分:1)
将 test()的最后一行更改为:
return callback();
答案 1 :(得分:0)
以下是让回调返回值的一种方法:
y=15
这是另一种方式:
function tens(value, callback) {
return callback(10*value)
}
var n = tens(100, function(result){ return result })
n
1000
我提出问题的方式的问题在于
function tens(value, callback) {
return callback(10*value)
}
var n = tens(150,
function(err, result) {
if (err) throw err
else return result
})
n
1500
也会起作用。如果这个简化的语法同样有效,那么我原来问题中的函数“回调”不是一个回调函数,而是一个我通过巧合“回调”调用的函数