在变量上调用函数

时间:2017-09-08 22:23:57

标签: javascript

抱歉我的noob问题,但我无法理解发生了什么,我有一个接受回调的函数,而不是调用此函数但是在一个变量上。奇怪的是,我没有调用变量,当我加载页面时,它自动运行变量“我”的功能可以有人解释发生了什么?

function whoAmI(name,callback) {
  if(name === 'James') {
    console.log("You are James");
  } else {
    console.log("You are not James");
  }

  callback();
}

var me = whoAmI("Joe", function() {
  console.log('Calback Finised');
});

1 个答案:

答案 0 :(得分:0)

下面:

var me = whoAmI("Joe", function() {
  console.log('Calback Finised');
});

您正在调用该函数并将其分配给变量me

你的功能是在这里创建的:

function whoAmI(name,callback) {
  if(name === 'James') {
    console.log("You are James");
  } else {
    console.log("You are not James");
  }

  callback();
}

在这里:

var me = whoAmI("Joe", function() {
  console.log('Calback Finised');
});

刚刚调用它,并且此函数已分配给变量。