Callback Function 其实描述的就是一个情境。
Callback Function 就是将函式当参数,传进另一个函式里面。
Callback Function 跟一般的函式没什麽不同,不同的是被呼叫执行的时机,一般的函式被呼叫後就会马上执行,Callback Function 通常在达成一些条件之後才会执行。
像下面的函式 handle 我们就叫做 Callback Function
我们将函式 handle 作为参数传进函式 test 里面,所以 handle 就是 Calback Function
def test(arg):
print(arg)
def handle():
print(100)
test(handle)
Callback Function 回传进其他函式里面,那在其他函式里要如何呼叫 Callback Function 呢?
只要使用参数名呼就可以呼叫 Callback Function
def test(arg):
arg() # 呼叫 Callback Function
def handle():
print(100)
test(handle) # 将 handle 作为 Callback Function 传进 test 函式里面
参数是在呼叫的时候传进去
Callback Function 是在其他的函式里被呼叫的
如果希望将参数传进 Callback Function 那就要在呼叫 Callback Function 的函式里设定好参数
def test(arg):
arg(50) # 将 50 作为参数传进 Callback Function
def handle(data):
print(data)
test(handle)
Callback Function 跟一般的函式不同的地方有两点
Callback Function 提供了要传入的函式的弹性,所以我们可以传不同的函式进去看看
def add(n1,n2,cb):
cb(n1+n2) # 呼叫函式 handle1 ,并将 n1+n2 的结果作为参数传进 Callback Function
def handle1(result):
print("结果是",result)
add(3,4,handle1) # 印出 结果是 7
我们可以利用 Callback Function 提供的弹性,传不同函式看看
就可以印出不一样的语言
def add(n1,n2,cb):
cb(n1+n2)
def handle1(result):
print("结果是",result)
def handle2(result):
print("Result of Add is",result)
add(3,4,handle1) # 结果是 7
add(5,6,handle2) # Result of Add is 11
<<: [Day21]ISO 27001 附录 A.9 存取控制
今天要来介绍如何将自己撰写的元件包成元件类别库,并提供给 Blazor Server 与 Blazo...
var myArr = ['燃面', '生菜', '花椒']; myArr.a = '雉鸡'; //...
劳动力发展署新闻稿 劳动部劳动力发展署对於民间公司利用该署「台湾就业通」网站为便利求职求才媒合所...
前言 Go 语言的叙述,与大部分程序语言用法差不多,所以对学过程序语言的朋友,不会太需要花时间理解,...
自动化 (Automation) 指的是写出一个程序,让原本需要人工手动执行的多个步骤变成全部都由程...