回调:函数如何访问其他函数?

Callbacks: How do Functions Access other Functions?

嗯,先看我的代码:

function cubosSuma(a,b,callback) {
    var res = (a*a*a)+(b*b*b);
    callback(res);
    }
function resultado(res) {
    console.log(res);
    };
cubosSuma(3,2,resultado); //line 8;

我想理解的是为什么我可以在 cubosSuma 中调用 'resultado'(第 8 行),如果它应该是一个函数有它自己的范围。我的意思是,为什么可以从另一个函数进入 callback(res)?

函数 resultado 在最后一行代码中使用之前定义,因此您的程序就是这样知道它是什么的。这对 Javascript 并不重要,因为 Javascript 使用提升,您可以在 https://www.w3schools.com/js/js_hoisting.asp

阅读更多相关信息

callbackcubosSuma 函数中只是一个占位符名称...当您在代码的最后一行调用 cubosSuma 时,它会替换占位符 callback使用您传递给它的函数...这是 resultado

在其他函数中使用函数是 Javascript 的一个特性,并且一直如此。有关详细信息,请参阅这篇 SO 文章 - Calling a Function defined inside another function in Javascript