Javascript 基本回调函数结果

Javascript 基本回调函数结果,javascript,callback,Javascript,Callback,我试图理解回调的概念 当我这样做时: var myCallback = function(data) { console.log( 'got data: '+data); }; var usingItNow = function(callback) { callback('get it?'); }; usingItNow(myCallback); 我得到了预期的输出结果: 获取数据:获取数据 但是当我执行下面的操作时,我会得到未定义的作为输出,这是为什么 var myCallbac

我试图理解回调的概念

当我这样做时:

var myCallback = function(data) {
 console.log(  'got data: '+data);
};

var usingItNow = function(callback) {
  callback('get it?');
};

usingItNow(myCallback);
我得到了预期的输出结果:

获取数据:获取数据

但是当我执行下面的操作时,我会得到
未定义的
作为输出,这是为什么

var myCallback = function(data) {
 return 'got data: '+data;
};

var usingItNow = function(callback) {
  callback('get it?');
};

console.log(usingItNow(myCallback));

您还需要使用InGetNow从
返回

const myCallback=函数(数据){
返回“已获取数据:”+数据;
};
const usingItNow=函数(回调){
返回回调('get it?');
};

log(usingItNow(myCallback))这与回调无关。您正在打印函数调用的结果,但是
usingItNow()
函数不返回任何内容,因此结果是
未定义的

为了证明它与回调无关,请尝试打印出对标准函数的调用,该函数不返回任何内容,您也会得到
undefined

函数usingItNow(num){
num=num+num;
};

console.log(usingItNow(10))只需单独查看
usingItNow
:它返回什么?没有什么。回调与此无关。我会对这两个问题给出正确答案,但SO不允许我这样做!你很快就可以投票了(你只需要15个代表),但别担心,我回答说,希望这会对其他人有利,而不是为了获得选票。我只是觉得苏伦的回答对某些人来说可能不够详细。