Javascript 使用表达式中的变量';s回调

Javascript 使用表达式中的变量';s回调,javascript,jquery,Javascript,Jquery,我在搜索时发现的很多东西都是关于Ajax的,所以我甚至不确定我要做的是什么 我有以下JavaScript: function getFruit(callback) { var result; result = "banana"; // Make sure the callback is a function​ if (typeof callback === "function") { // Call it, since we have confirme

我在搜索时发现的很多东西都是关于Ajax的,所以我甚至不确定我要做的是什么

我有以下JavaScript:

function getFruit(callback) {
    var result;

    result = "banana";

    // Make sure the callback is a function​
    if (typeof callback === "function") {
    // Call it, since we have confirmed it is callable​
        callback();
    }

    return result;
}

getFruit(function(){
    console.log(getFruit());
}
我只想将result的当前值传递给回调函数,以便在那里使用它


请告知。

您需要将
结果
作为参数传递给
回调
函数

函数getFruit(回调){ var result=“香蕉”; if(回调类型==“函数”){ 回调(结果); } } getFruit(函数(参数){ console.log(参数);
})您需要将
结果作为参数传递给
回调
函数

函数getFruit(回调){ var result=“香蕉”; if(回调类型==“函数”){ 回调(结果); } } getFruit(函数(参数){ console.log(参数);
})
一种方法是将其作为回调参数传递:

函数getFruit(回调){ var结果; 结果=“香蕉”; //确保回调是一个函数​ if(回调类型==“函数”){ //呼叫它,因为我们已经确认它是可呼叫的​ 回调(结果); } 返回结果; } getFruit(函数(结果){ 警报(结果);
});一种方法是将其作为回调参数传递:

函数getFruit(回调){ var结果; 结果=“香蕉”; //确保回调是一个函数​ if(回调类型==“函数”){ //呼叫它,因为我们已经确认它是可呼叫的​ 回调(结果); } 返回结果; } getFruit(函数(结果){ 警报(结果);
});您可以执行以下操作:

function getFruit(callback) {
    var result;

    result = "banana";

    // Make sure the callback is a function​
    if (typeof callback === "function") {
    // Call it, since we have confirmed it is callable​
        callback(result);
    }


}

getFruit(function(response){
    console.log(response);
})

您可以这样做:

function getFruit(callback) {
    var result;

    result = "banana";

    // Make sure the callback is a function​
    if (typeof callback === "function") {
    // Call it, since we have confirmed it is callable​
        callback(result);
    }


}

getFruit(function(response){
    console.log(response);
})

仅仅因为函数是同步的并不是创建具有副作用的函数的借口。在您的第一种情况下不需要返回结果谢谢您提供了另一种方法。仅仅因为函数是同步的并不是创建具有副作用的函数的借口。在您的第一种情况下不需要返回结果谢谢您提供了另一种方法方式。为什么语句返回结果是必需的?@RahulArora,这不是必需的,因为它是OP代码的一部分,因此保留了它(现在已删除)。为什么语句返回结果是必需的?@RahulArora,这不是必需的,因为它是OP代码的一部分,因此保留了它(现在已删除)。感谢您在这个问题上的帮助。谢谢您在这个问题上的帮助。