ဂျက်တ်စ် အပြန်လည်

"I will call back later!"

回调 (callback) 是作为参数传递给另一个函数的函数

这种技术允许函数调用另一个函数

回调函数可以在另一个函数完成后运行

函数序列

JavaScript 函数按照它们被调用的顺序执行。而不是以它们被定义的顺序。

此例最终将显示 "Goodbye":

အမျိုး

function myFirst() {
  myDisplayer("Hello");
}
function mySecond() {
  myDisplayer("Goodbye");
}
myFirst();
mySecond();

ကျွန်ုပ်ကိုယ်ဖြင့် ကြိုးစားပါ

本例子最终会显示 "Hello":

အမျိုး

function myFirst() {
  myDisplayer("Hello");
}
function mySecond() {
  myDisplayer("Goodbye");
}
mySecond();
myFirst();

ကျွန်ုပ်ကိုယ်ဖြင့် ကြိုးစားပါ

顺序控制

有时您希望更好地控制何时执行函数。

假设您要进行计算,然后显示结果。

您可以调用计算器函数 (myCalculator),保存结果,然后调用另一个函数 (အဆိုပါ အခြေခံ အဖြစ် ဖြစ်သည်။) 来显示结果:

အမျိုး

function myDisplayer(some) {
  document.getElementById("demo").innerHTML = some;
}
function myCalculator(num1, num2) {
  let sum = num1 + num2;
  return sum;
}
let result = myCalculator(5, 5);
myDisplayer(result);

ကျွန်ုပ်ကိုယ်ဖြင့် ကြိုးစားပါ

或者,您可以调用计算器函数 (myCalculator),并让计算器函数调用显示函数 (အဆိုပါ အခြေခံ အဖြစ် ဖြစ်သည်။):

အမျိုး

function myDisplayer(some) {
  document.getElementById("demo").innerHTML = some;
}
function myCalculator(num1, num2) {
  let sum = num1 + num2;
  myDisplayer(sum);
}
myCalculator(5, 5);

ကျွန်ုပ်ကိုယ်ဖြင့် ကြိုးစားပါ

上面第一个例子的问题是你必须调用两个函数来显示结果。

第二个例子的问题是您无法阻止计算器函数显示结果。

现在是引入回调的时候了。

ဂျက်တ်စ် အပြန်လည်

回调是作为参数传递给另一个函数的函数。

使用回调,您可以通过回调调用计算器函数(myCalculator),并在计算完成后让计算器函数运行回调:

အမျိုး

function myDisplayer(some) {
  document.getElementById("demo").innerHTML = some;
}
function myCalculator(num1, num2, myCallback) {
  let sum = num1 + num2;
  myCallback(sum);
}
myCalculator(5, 5, myDisplayer);

ကျွန်ုပ်ကိုယ်ဖြင့် ကြိုးစားပါ

အဆိုပါ အခြေခံ အဖြစ် ဖြစ်သည်။ အဆိုပါ အခြေခံ အဖြစ် ဖြစ်သည်။ myDisplayer

အဆိုပါ အခြေခံ အဖြစ် အားကစာ အားကစာ အသုံးပြုသည်။ myCalculator().

အဆိုပါ အခြေခံ အဖြစ် အားကစာ အားကစာ အသုံးပြု ပါ။

အခြေခံ: myCalculator(5, 5, myDisplayer);

အမှား: myCalculator(5, 5, myDisplayer());

အဆိုပါ အခြေခံ အဖြစ် အသုံးပြု

အဆိုပါ အခြေခံ အဖြစ် အခြေခံ အဖြစ် ဖြစ်သည်။

အဆိုပါ အခြေခံ အဖြစ် အသုံးပြုသော အခြေခံ အဖြစ် အသုံးပြုရမည်။

အဆိုပါ အဆိုပါ အခြေခံ အဖြစ် အဆိုပါ အဆိုပါ အခြေခံ အဖြစ် ဖြစ်ပေါ်လာသော အခြေခံ အဖြစ် ဖြစ်သည်။

နောက်ပိုင်းသည် အဆိုပါ အဆိုပါ အဆိုပါ အခြေခံ အဖြစ် ဖော်ပြရမည်။