当我使用alert()
或console.log()
时,它可以正常工作。
function greeting(name) {
alert('Hello ' + name);
console.log(`Hello ${name}`)
}
function processUserInput(callback) {
var name = prompt('Please enter your name.');
callback(name);
}
processUserInput(greeting);
但是当我使用return
时,它返回未定义的
function greeting(name) {
let returnthis = `hello ${name}`
return returnthis
}
function processUserInput(callback) {
var name = prompt('Please enter your name.');
callback(name);
}
console.log(processUserInput(greeting));
为什么会这样?
如何返回值?
我阅读了this的答案,但听不懂。
答案 0 :(得分:2)
您还需要返回回调
function greeting(name) {
return `hello ${name}`
}
function processUserInput(callback) {
var name = prompt('Please enter your name.');
return callback(name);
}
console.log(processUserInput(greeting));
答案 1 :(得分:2)
因为processUserInput
不返回任何内容。做:
return callback(name);