了解回调函数

Understanding callback functions

提问人:Jibola 提问时间:7/1/2023 最后编辑:ndc85430Jibola 更新时间:7/1/2023 访问量:51

问:

const myFunc = (callbackFunc) => {
    let value = 50;
    callbackFunc(value)
};

myFunc(value => {
    console.log(value)
})

我不明白这个代码块是如何以及为什么运行的,我的主要问题是“callbackFunc”参数,该参数已直接发送回其代码块。我在预制视频中看到了这一点,它将数字“50”记录回控制台。我真的不明白为什么?

我也尝试将代码重写为函数声明,看看它是否会更清晰,但我仍然无法理解。

JavaScript 函数 回调

评论

0赞 Bergi 7/1/2023
"我尝试将代码重写为函数声明“ - 你能给我们看一下代码吗?你有什么不明白的?“直接发送回其代码块”是什么意思?

答:

1赞 Unmitigated 7/1/2023 #1

让我们一步一步地完成这段代码。

const myFunc = (callbackFunc) => { 
    let value = 50;
    callbackFunc(value);
};

这会将箭头函数分配给 。它需要一个参数:(它应该是一个函数才能工作)。在函数内部,一个名为 的变量使用值 进行初始化。然后,调用 ,将变量的值(即 )作为第一个参数传递。myFunccallbackFuncmyFuncvalue50callbackFuncvalue50

myFunc(value => { 
    console.log(value);
});

这将调用箭头函数并将其作为第一个参数传递,该参数将位于 中。此函数将作为内部的第一个参数调用,因此(第一个参数)将设置为 。该函数仅使用该值进行调用,因此会输出到控制台。myFuncvalue => {console.log(value)}callbackFuncmyFunc50myFuncvalue50console.log50