Javascript回调返回未定义的数据



我理解回调得到返回数据为未定义。

function goodMorning(name, msg) {
return `${name} ${msg}`;
}
function greet(name, msg, cb) {
const myName = "Sairam";
console.log(`${cb(name)} ${cb(msg)} i am ${myName}`);
}
greet("Suvarna", "Good Morning", goodMorning);

在上面的代码中,我在greet方法中传递goodMorning函数作为回调,而控制台日志返回未定义的数据。

请按这里查看控制台消息

cb (goodMorning)是一个有两个参数的函数,但你只传递一个参数,你应该这样做:

${cb(name, msg)}

当前你调用cb时只带一个参数而不是两个所以第二个得到undefined

最新更新